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 | BOS 3 - 2 TB | BOS | 0.556 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | BOS 4 - 1 TB | BOS | - | 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.5560 |
| 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.149 | 3.440 | - | Base ML historical model prediction |
| 2 | variance_applied | 5 | 3 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 2 | 0.5560 | 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.4744516728624536,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.051589219330855085,
"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": 5,
"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": 88,
"near_bucket_sample_size": 88,
"medium_bucket_sample_size": 126,
"wide_bucket_sample_size": 136,
"global_sample_size": 143,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.625,
"bayesian_hit_rate": 0.6038,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8302,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5,
"calibrated_pick_probability": 0.556,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "TB",
"games": 62,
"wins": 37,
"losses": 25,
"win_pct": 0.5967741935483871,
"runs_scored": 283,
"runs_allowed": 276,
"run_differential": 7,
"run_differential_per_game": 0.11290322580645161,
"available": true
},
"away": {
"team": "BOS",
"games": 63,
"wins": 27,
"losses": 36,
"win_pct": 0.42857142857142855,
"runs_scored": 249,
"runs_allowed": 258,
"run_differential": -9,
"run_differential_per_game": -0.14285714285714285,
"available": true
},
"run_differential_edge_per_game": 0.2558,
"win_pct_edge": 0.1682,
"quality_edge": 0.5081,
"margin_adjustment": 0.2134,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 2.455,
"home_runs": 1.377,
"home_win_probability": 0.4084
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "BOS",
"guardrail_predicted_team": "BOS",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "BOS",
"output_opponent_team": "TB",
"final_score_winner": "BOS",
"pre_simulation_winner": "BOS",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "BOS 3 - 2 TB",
"winner": "BOS"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "BOS 4 - 1 TB",
"winner": "BOS"
},
"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": 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": "TB",
"games": 62,
"wins": 37,
"losses": 25,
"win_pct": 0.5967741935483871,
"runs_scored": 283,
"runs_allowed": 276,
"run_differential": 7,
"run_differential_per_game": 0.11290322580645161,
"available": true
},
"away": {
"team": "BOS",
"games": 63,
"wins": 27,
"losses": 36,
"win_pct": 0.42857142857142855,
"runs_scored": 249,
"runs_allowed": 258,
"run_differential": -9,
"run_differential_per_game": -0.14285714285714285,
"available": true
},
"home_quality_edge": 0.1989,
"original_score": {
"away_runs": 2.455,
"home_runs": 1.377,
"home_win_probability": 0.4084
},
"adjusted_score": {
"away_runs": 2.172,
"home_runs": 2.005,
"home_win_probability": 0.51
}
}
}{
"applied": false,
"raw_margin": -0.1669,
"final_margin": -0.1669,
"margin_cap": 1.5,
"season_quality_edge": 0.5081,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.54183,
"final_confidence": 0.54183,
"confidence_cap": 0.66,
"score_gap": 0.1669,
"calibration_sample_size": 88,
"calibration_empirical_hit_rate": 0.625,
"calibration_bayesian_hit_rate": 0.6038,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.5081,
"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": "BOS 3 - 2 TB",
"winner": "BOS"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "BOS 4 - 1 TB",
"winner": "BOS"
},
"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.556038,
"home_win_probability": 0.44396199999999997,
"away_win_probability": 0.556038,
"predicted_score_text": "BOS 3 - 2 TB",
"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": "BOS",
"original_runs": 3,
"run_delta": 0.0417,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 55.0,
"quality": 0.03362493949334998,
"contact": -0.06523431901818688,
"power": 0.01797984672757478,
"discipline": -0.23034341507662365,
"xwoba": 0.3093272727272728,
"recent_xwoba": 0.3093272727272728,
"barrel": 8.349090909090908,
"ab_hard_contact": 0.06410948866405547,
"ab_bat_speed": 70.54080033907478,
"ab_strikeout_rate": 0.22785194481848656,
"available_players": 9,
"top_players": [
{
"player_id": "575929",
"player_name": "Willson Contreras",
"position": "1B",
"weight": 7.0,
"quality": 1.0399045578091757,
"contact": 1.125142926723298,
"power": 1.521393710352238,
"discipline": -0.1822698931424422,
"xwoba": 0.399,
"recent_xwoba": 0.399,
"barrel": 15.7,
"ab_hard_contact": 1.201969445140007,
"ab_bat_speed": 74.61826416122005,
"ab_strikeout_rate": 0.25947712418300656,
"available": 1.0
},
{
"player_id": "702332",
"player_name": "Caleb Durbin",
"position": "3B",
"weight": 6.0,
"quality": -0.5675524380118813,
"contact": -0.7409403954968943,
"power": -1.2426597669437165,
"discipline": 0.15223207576106115,
"xwoba": 0.268,
"recent_xwoba": 0.268,
"barrel": 1.9,
"ab_hard_contact": -0.9213858150647996,
"ab_bat_speed": 66.0515579710145,
"ab_strikeout_rate": 0.1532608695652174,
"available": 1.0
},
{
"player_id": "677800",
"player_name": "Wilyer Abreu",
"position": "RF",
"weight": 7.0,
"quality": 0.6499745190733572,
"contact": 0.6784774366631228,
"power": 0.8099184401491879,
"discipline": 0.21640175035772508,
"xwoba": 0.348,
"recent_xwoba": 0.348,
"barrel": 11.5,
"ab_hard_contact": 0.5187497553647169,
"ab_bat_speed": 72.98060871518419,
"ab_strikeout_rate": 0.18459119496855345,
"available": 1.0
},
{
"player_id": "691785",
"player_name": "Marcelo Mayer",
"position": "SS",
"weight": 5.0,
"quality": -0.529839377360727,
"contact": -0.9514009252643055,
"power": -0.7804483936485483,
"discipline": -0.2311220496078653,
"xwoba": 0.257,
"recent_xwoba": 0.257,
"barrel": 6.0,
"ab_hard_contact": -0.36668215868524734,
"ab_bat_speed": 73.50727541371158,
"ab_strikeout_rate": 0.20390070921985817,
"available": 1.0
},
{
"player_id": "643396",
"player_name": "Isiah Kiner-Falefa",
"position": "2B",
"weight": 4.0,
"quality": -0.1395580153222623,
"contact": -0.33878531112836413,
"power": -0.950349880110843,
"discipline": 0.38040184801778987,
"xwoba": 0.301,
"recent_xwoba": 0.301,
"barrel": 4.0,
"ab_hard_contact": -0.53347379269305,
"ab_bat_speed": 65.21753623188405,
"ab_strikeout_rate": 0.1463768115942029,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "693855",
"player_name": "Ian Seymour",
"quality": -0.01960750324967717,
"contact": -0.05002937979530662,
"command": 0.10999776055935487,
"movement": -0.680199602632212,
"xwoba": 0.312,
"whiff": 29.3,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "TB",
"original_runs": 2,
"run_delta": 0.2527,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 50.0,
"quality": 0.1333255447127273,
"contact": -0.046170979361953766,
"power": -0.25270437538904744,
"discipline": 0.42454168619554566,
"xwoba": 0.30994000000000005,
"recent_xwoba": 0.30994000000000005,
"barrel": 5.8020000000000005,
"ab_hard_contact": 0.04444963507619592,
"ab_bat_speed": 70.32224857987461,
"ab_strikeout_rate": 0.19429268770216138,
"available_players": 9,
"top_players": [
{
"player_id": "670764",
"player_name": "Taylor Walls",
"position": "SS",
"weight": 6.0,
"quality": -1.0035819583526155,
"contact": -1.9206378428108313,
"power": -1.892926728159156,
"discipline": 0.26563204307063965,
"xwoba": 0.238,
"recent_xwoba": 0.238,
"barrel": 2.0,
"ab_hard_contact": -1.3337726584212164,
"ab_bat_speed": 61.07811038011696,
"ab_strikeout_rate": 0.24078947368421053,
"available": 1.0
},
{
"player_id": "691406",
"player_name": "Junior Caminero",
"position": "3B",
"weight": 7.0,
"quality": 1.0821605284526064,
"contact": 1.2304755985535685,
"power": 1.1178206744730521,
"discipline": 1.000947157780491,
"xwoba": 0.373,
"recent_xwoba": 0.373,
"barrel": 11.9,
"ab_hard_contact": 1.0634611085086698,
"ab_bat_speed": 78.56293650793651,
"ab_strikeout_rate": 0.16254578754578755,
"available": 1.0
},
{
"player_id": "666018",
"player_name": "Jonathan Aranda",
"position": "1B",
"weight": 6.0,
"quality": 0.9571415918334842,
"contact": 0.9859943223443222,
"power": 1.059010079545684,
"discipline": 0.7517603445936779,
"xwoba": 0.377,
"recent_xwoba": 0.377,
"barrel": 12.4,
"ab_hard_contact": 1.2034396861517769,
"ab_bat_speed": 69.23668742368741,
"ab_strikeout_rate": 0.2310897435897436,
"available": 1.0
},
{
"player_id": "650490",
"player_name": "Yandy Díaz",
"position": "DH",
"weight": 7.0,
"quality": 0.9640869454212556,
"contact": 1.4213547619047617,
"power": 0.8308840917801164,
"discipline": 0.6553977072310404,
"xwoba": 0.374,
"recent_xwoba": 0.374,
"barrel": 8.8,
"ab_hard_contact": 1.32549135941185,
"ab_bat_speed": 72.64145833333333,
"ab_strikeout_rate": 0.12366666666666667,
"available": 1.0
},
{
"player_id": "656775",
"player_name": "Cedric Mullins",
"position": "CF",
"weight": 6.0,
"quality": -0.6671550612195177,
"contact": -1.1114407564699793,
"power": -0.9654150521786207,
"discipline": 0.24530511463844787,
"xwoba": 0.258,
"recent_xwoba": 0.258,
"barrel": 3.2999999999999994,
"ab_hard_contact": -0.9905867578581252,
"ab_bat_speed": 66.68995943562611,
"ab_strikeout_rate": 0.17925925925925926,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "813349",
"player_name": "Connelly Early",
"quality": -0.3936288791915684,
"contact": -0.5687811562579261,
"command": -0.18543081086921687,
"movement": -0.46867137192543123,
"xwoba": 0.337,
"whiff": 22.4,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"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": 3,
"home_runs": 2,
"predicted_score_text": "BOS 3 - 2 TB",
"confidence": 0.556038,
"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": "BOS 3 - 2 TB",
"winner": "BOS"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "BOS 4 - 1 TB",
"winner": "BOS"
},
"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 BOS | True | 1.0073 | 1.0073 | 1 | 9 | 0 |
| Home TB | True | 1.0038 | 1.0038 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CF | Ceddanne Rafaela | 15 | 0.9831 | -0.2259 | negative_batter_regression | 0.3010 | 0.2460 | 0.3630 | 6.80 | 37 | 87.10 | 10.10 | 24.30 | 20.60 | 6 | -1.2857 |
| LF | Jarren Duran | 137 | 1.0120 | 0.1604 | neutral | 0.3020 | 0.2320 | 0.3950 | 11.70 | 40.60 | 90.60 | 14.40 | 34.50 | 28.20 | 6.90 | 0.2286 |
| 1B | Willson Contreras | 29 | 1.1095 | 1.4601 | neutral | 0.3990 | 0.2780 | 0.5370 | 15.70 | 44.50 | 90.60 | 16.50 | 30.30 | 24.90 | 9.90 | -0.1143 |
| RF | Wilyer Abreu | 19 | 1.0675 | 0.9004 | neutral | 0.3480 | 0.2710 | 0.4720 | 11.50 | 43 | 89.80 | 17.40 | 22 | 19 | 9 | 0.3143 |
| DH | Mickey Gasper | 232 | 0.9960 | -0.0528 | negative_batter_regression | 0.2920 | 0.2430 | 0.3580 | 6 | 48 | 92.60 | 16.90 | 22 | 24.70 | 5.50 | -0.9143 |
| 3B | Caleb Durbin | 168 | 0.9580 | -0.5602 | neutral | 0.2680 | 0.2300 | 0.2950 | 1.90 | 30.10 | 85.30 | 8.10 | 15.40 | 14.50 | 5.50 | 0.6286 |
| 2B | Isiah Kiner-Falefa | 166 | 0.9914 | -0.1148 | neutral | 0.3010 | 0.2640 | 0.3470 | 4 | 27.60 | 83.40 | 10.70 | 17.90 | 15.20 | 8.10 | 0.0286 |
| SS | Marcelo Mayer | 262 | 0.9563 | -0.5832 | neutral | 0.2570 | 0.2010 | 0.2920 | 6 | 37 | 86.80 | 9.40 | 26.20 | 17.90 | 6.50 | -0.0571 |
| C | Carlos Narváez | 377 | 0.9919 | -0.1086 | neutral | 0.2840 | 0.2230 | 0.3340 | 6.70 | 37.30 | 91.50 | 14.30 | 28.80 | 30.40 | 8 | 0.2286 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3B | Junior Caminero | 69 | 1.0867 | 1.1559 | neutral | 0.3730 | 0.2770 | 0.4840 | 11.90 | 48.20 | 92.30 | 8.40 | 20.40 | 15.30 | 13.90 | -0.2286 |
| DH | Yandy Díaz | 39 | 1.0748 | 0.9973 | neutral | 0.3740 | 0.2990 | 0.4850 | 8.80 | 46.40 | 90.90 | 5.90 | 13.80 | 12.80 | 8.50 | -0.8000 |
| LF | Austin Slater | 407 | 0.9526 | -0.6317 | neutral | 0.2330 | 0.1800 | 0.2460 | 3.40 | 13.80 | 85.70 | 11.90 | 30.10 | 30.60 | 10.20 | -0.3143 |
| RF | Ryan Vilade | 177 | 0.9947 | -0.0707 | negative_batter_regression | 0.3070 | 0.2460 | 0.3790 | 4.10 | 37.80 | 89.80 | 16.50 | 19 | 19.20 | 9.60 | -1.2286 |
| C | Nick Fortes | 536 | 0.9714 | -0.3810 | neutral | 0.2690 | 0.2460 | 0.3200 | 0.80 | 40.60 | 86.80 | 7.40 | 15.20 | 12.80 | 2.60 | 0.1429 |
| 2B | Ben Williamson | 185 | 0.9917 | -0.1101 | neutral | 0.3050 | 0.2520 | 0.3320 | 1 | 40 | 88.80 | 3.40 | 18 | 20.40 | 10.90 | -0.1714 |
| SS | Taylor Walls | 73 | 0.9207 | -1.0575 | negative_batter_regression | 0.2380 | 0.1700 | 0.2190 | 2 | 15.70 | 82.60 | 20 | 22.50 | 25.90 | 11.40 | -1.0857 |
| 1B | Jonathan Aranda | 139 | 1.0958 | 1.2769 | neutral | 0.3770 | 0.2640 | 0.4820 | 12.40 | 46.60 | 90.80 | 15.50 | 21.90 | 24.70 | 14.80 | 0.2857 |
| CF | Cedric Mullins | 493 | 0.9457 | -0.7240 | neutral | 0.2580 | 0.1820 | 0.3010 | 3.30 | 30.50 | 88.20 | 29.20 | 20.10 | 17.70 | 8.40 | 0 |
{
"home": {
"applied": true,
"offense_factor": 1.0038,
"raw_average_factor": 1.0038,
"team_espn_average_rank": 235.33,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "3B",
"player_id": "691406",
"player_name": "Junior Caminero",
"offense_factor": 1.0867,
"quality_score": 1.1559,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691406",
"espn_id": 4905921,
"player_name": "Junior Caminero",
"team": "TB",
"role": "batter",
"espn_rank": 69,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 69,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 235.0,
"ab_rank": "51",
"r_value": 41.0,
"r_rank": "18",
"h_value": 65.0,
"h_rank": "32",
"avg_value": 0.2765957,
"avg_rank": 42.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 14.0,
"hr_rank": "17",
"rbi_value": 30.0,
"rbi_rank": "78",
"tb_value": 117.0,
"tb_rank": "530",
"bb_value": 38.0,
"bb_rank": "18",
"so_value": 42.0,
"so_rank": "146",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3759124,
"obp_rank": "22",
"slg_value": 0.4978723,
"slg_rank": "28",
"ops_value": 0.8737847,
"ops_rank": 22.0,
"war_value": 1.51,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 15.3,
"bb_percent": 13.9,
"woba": 0.381,
"xwoba": 0.373,
"xba": 0.277,
"xslg": 0.484,
"sweet_spot_percent": 25.3,
"barrel_batted_rate": 11.9,
"hard_hit_percent": 48.2,
"exit_velocity_avg": 92.3,
"launch_angle_avg": 8.4,
"whiff_percent": 20.4,
"swing_percent": 40.9
},
"components": {
"expected_quality": 1.3812,
"regression_edge": -0.2286,
"xwoba_edge": 1.9429,
"xba_edge": 1.0857,
"xslg_edge": 1.5714,
"barrel_edge": 1.0889,
"hard_hit_edge": 1.3357,
"exit_velocity_edge": 1.4,
"sweet_spot_edge": -1.3333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "650490",
"player_name": "Yandy Díaz",
"offense_factor": 1.0748,
"quality_score": 0.9973,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "650490",
"espn_id": 33481,
"player_name": "Yandy Diaz",
"team": "TB",
"role": "batter",
"espn_rank": 39,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 39,
"gp_value": 59.0,
"gp_rank": "132",
"ab_value": 228.0,
"ab_rank": "72",
"r_value": 32.0,
"r_rank": "67",
"h_value": 74.0,
"h_rank": "5",
"avg_value": 0.3245614,
"avg_rank": 3.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 11.0,
"hr_rank": "41",
"rbi_value": 42.0,
"rbi_rank": "14",
"tb_value": 120.0,
"tb_rank": "318",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 33.0,
"so_rank": "215",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3992248,
"obp_rank": "6",
"slg_value": 0.5263157,
"slg_rank": "17",
"ops_value": 0.9255405,
"ops_rank": 11.0,
"war_value": 2.08,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 214.0,
"k_percent": 12.8,
"bb_percent": 8.5,
"woba": 0.402,
"xwoba": 0.374,
"xba": 0.299,
"xslg": 0.485,
"sweet_spot_percent": 28.6,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 46.4,
"exit_velocity_avg": 90.9,
"launch_angle_avg": 5.9,
"whiff_percent": 13.8,
"swing_percent": 47.2
},
"components": {
"expected_quality": 1.3224,
"regression_edge": -0.8,
"xwoba_edge": 1.9714,
"xba_edge": 1.7143,
"xslg_edge": 1.5857,
"barrel_edge": 0.4,
"hard_hit_edge": 1.0786,
"exit_velocity_edge": 0.84,
"sweet_spot_edge": -0.7833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "596103",
"player_name": "Austin Slater",
"offense_factor": 0.9526,
"quality_score": -0.6317,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "596103",
"espn_id": 35265,
"player_name": "Austin Slater",
"team": "NYM",
"role": "batter",
"espn_rank": 407,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 407,
"gp_value": 21.0,
"gp_rank": "387",
"ab_value": 43.0,
"ab_rank": "410",
"r_value": 4.0,
"r_rank": "412",
"h_value": 9.0,
"h_rank": "404",
"avg_value": 0.2093023,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 2.0,
"rbi_rank": "448",
"tb_value": 10.0,
"tb_rank": "2429",
"bb_value": 5.0,
"bb_rank": "358",
"so_value": 15.0,
"so_rank": "379",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2857142,
"obp_rank": "-",
"slg_value": 0.2325581,
"slg_rank": "-",
"ops_value": 0.5182723,
"ops_rank": null,
"war_value": -0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 44.0,
"k_percent": 30.6,
"bb_percent": 10.2,
"woba": 0.244,
"xwoba": 0.233,
"xba": 0.18,
"xslg": 0.246,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 3.4,
"hard_hit_percent": 13.8,
"exit_velocity_avg": 85.7,
"launch_angle_avg": 11.9,
"whiff_percent": 30.1,
"swing_percent": 41.9
},
"components": {
"expected_quality": -1.5811,
"regression_edge": -0.3143,
"xwoba_edge": -2.0571,
"xba_edge": -1.6857,
"xslg_edge": -1.8286,
"barrel_edge": -0.8,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -1.24,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "668723",
"player_name": "Ryan Vilade",
"offense_factor": 0.9947,
"quality_score": -0.0707,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "668723",
"espn_id": 40960,
"player_name": "Ryan Vilade",
"team": "TB",
"role": "batter",
"espn_rank": 177,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 177,
"gp_value": 37.0,
"gp_rank": "298",
"ab_value": 91.0,
"ab_rank": "315",
"r_value": 9.0,
"r_rank": "333",
"h_value": 26.0,
"h_rank": "264",
"avg_value": 0.2857142,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 22.0,
"rbi_rank": "159",
"tb_value": 41.0,
"tb_rank": "1308",
"bb_value": 10.0,
"bb_rank": "261",
"so_value": 20.0,
"so_rank": "331",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3495145,
"obp_rank": "-",
"slg_value": 0.4505494,
"slg_rank": "-",
"ops_value": 0.8000639,
"ops_rank": null,
"war_value": 0.6,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 74.0,
"k_percent": 19.2,
"bb_percent": 9.6,
"woba": 0.35,
"xwoba": 0.307,
"xba": 0.246,
"xslg": 0.379,
"sweet_spot_percent": 32.4,
"barrel_batted_rate": 4.1,
"hard_hit_percent": 37.8,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 16.5,
"whiff_percent": 19.0,
"swing_percent": 49.1
},
"components": {
"expected_quality": 0.0172,
"regression_edge": -1.2286,
"xwoba_edge": 0.0571,
"xba_edge": 0.2,
"xslg_edge": 0.0714,
"barrel_edge": -0.6444,
"hard_hit_edge": -0.15,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": -0.15,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "663743",
"player_name": "Nick Fortes",
"offense_factor": 0.9714,
"quality_score": -0.381,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663743",
"espn_id": 41674,
"player_name": "Nick Fortes",
"team": "TB",
"role": "batter",
"espn_rank": 536,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 536,
"gp_value": 50.0,
"gp_rank": "205",
"ab_value": 146.0,
"ab_rank": "216",
"r_value": 11.0,
"r_rank": "304",
"h_value": 35.0,
"h_rank": "209",
"avg_value": 0.239726,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 13.0,
"rbi_rank": "262",
"tb_value": 45.0,
"tb_rank": "1761",
"bb_value": 4.0,
"bb_rank": "385",
"so_value": 20.0,
"so_rank": "331",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2774193,
"obp_rank": "-",
"slg_value": 0.3082191,
"slg_rank": "-",
"ops_value": 0.5856384,
"ops_rank": null,
"war_value": -0.72,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 133.0,
"k_percent": 12.8,
"bb_percent": 2.6,
"woba": 0.264,
"xwoba": 0.269,
"xba": 0.246,
"xslg": 0.32,
"sweet_spot_percent": 22.7,
"barrel_batted_rate": 0.8,
"hard_hit_percent": 40.6,
"exit_velocity_avg": 86.8,
"launch_angle_avg": 7.4,
"whiff_percent": 15.2,
"swing_percent": 52.8
},
"components": {
"expected_quality": -0.7561,
"regression_edge": 0.1429,
"xwoba_edge": -1.0286,
"xba_edge": 0.2,
"xslg_edge": -0.7714,
"barrel_edge": -1.3778,
"hard_hit_edge": 0.25,
"exit_velocity_edge": -0.8,
"sweet_spot_edge": -1.7667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "810938",
"player_name": "Ben Williamson",
"offense_factor": 0.9917,
"quality_score": -0.1101,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "810938",
"espn_id": 4626239,
"player_name": "Ben Williamson",
"team": "TB",
"role": "batter",
"espn_rank": 185,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 185,
"gp_value": 46.0,
"gp_rank": "232",
"ab_value": 129.0,
"ab_rank": "241",
"r_value": 20.0,
"r_rank": "188",
"h_value": 34.0,
"h_rank": "217",
"avg_value": 0.2635658,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": "214",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 17.0,
"rbi_rank": "216",
"tb_value": 42.0,
"tb_rank": "1807",
"bb_value": 16.0,
"bb_rank": "172",
"so_value": 30.0,
"so_rank": "239",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.349315,
"obp_rank": "-",
"slg_value": 0.3255813,
"slg_rank": "-",
"ops_value": 0.6748963,
"ops_rank": null,
"war_value": 0.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 125.0,
"k_percent": 20.4,
"bb_percent": 10.9,
"woba": 0.311,
"xwoba": 0.305,
"xba": 0.252,
"xslg": 0.332,
"sweet_spot_percent": 32.0,
"barrel_batted_rate": 1.0,
"hard_hit_percent": 40.0,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 3.4,
"whiff_percent": 18.0,
"swing_percent": 40.3
},
"components": {
"expected_quality": -0.1975,
"regression_edge": -0.1714,
"xwoba_edge": 0.0,
"xba_edge": 0.3714,
"xslg_edge": -0.6,
"barrel_edge": -1.3333,
"hard_hit_edge": 0.1643,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": -0.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "670764",
"player_name": "Taylor Walls",
"offense_factor": 0.9207,
"quality_score": -1.0575,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "670764",
"espn_id": 40576,
"player_name": "Taylor Walls",
"team": "TB",
"role": "batter",
"espn_rank": 73,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 73,
"gp_value": 47.0,
"gp_rank": "223",
"ab_value": 140.0,
"ab_rank": "220",
"r_value": 21.0,
"r_rank": "180",
"h_value": 29.0,
"h_rank": "247",
"avg_value": 0.2071428,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": "214",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 14.0,
"rbi_rank": "247",
"tb_value": 39.0,
"tb_rank": "1745",
"bb_value": 19.0,
"bb_rank": "135",
"so_value": 43.0,
"so_rank": "145",
"sb_value": 7.0,
"sb_rank": "52",
"obp_value": 0.310559,
"obp_rank": "-",
"slg_value": 0.2785714,
"slg_rank": "-",
"ops_value": 0.5891304,
"ops_rank": null,
"war_value": 1.46,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 139.0,
"k_percent": 25.9,
"bb_percent": 11.4,
"woba": 0.276,
"xwoba": 0.238,
"xba": 0.17,
"xslg": 0.219,
"sweet_spot_percent": 27.5,
"barrel_batted_rate": 2.0,
"hard_hit_percent": 15.7,
"exit_velocity_avg": 82.6,
"launch_angle_avg": 20.0,
"whiff_percent": 22.5,
"swing_percent": 43.5
},
"components": {
"expected_quality": -1.7694,
"regression_edge": -1.0857,
"xwoba_edge": -1.9143,
"xba_edge": -1.9714,
"xslg_edge": -2.2143,
"barrel_edge": -1.1111,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -2.48,
"sweet_spot_edge": -0.9667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "666018",
"player_name": "Jonathan Aranda",
"offense_factor": 1.0958,
"quality_score": 1.2769,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "666018",
"espn_id": 40810,
"player_name": "Jonathan Aranda",
"team": "TB",
"role": "batter",
"espn_rank": 139,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 139,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 222.0,
"ab_rank": "89",
"r_value": 34.0,
"r_rank": "57",
"h_value": 60.0,
"h_rank": "61",
"avg_value": 0.2702702,
"avg_rank": 51.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 11.0,
"hr_rank": "41",
"rbi_value": 44.0,
"rbi_rank": "10",
"tb_value": 102.0,
"tb_rank": "664",
"bb_value": 40.0,
"bb_rank": "14",
"so_value": 67.0,
"so_rank": "31",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3800738,
"obp_rank": "17",
"slg_value": 0.4594594,
"slg_rank": "46",
"ops_value": 0.8395332,
"ops_rank": 37.0,
"war_value": 0.85,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 222.0,
"k_percent": 24.7,
"bb_percent": 14.8,
"woba": 0.367,
"xwoba": 0.377,
"xba": 0.264,
"xslg": 0.482,
"sweet_spot_percent": 38.5,
"barrel_batted_rate": 12.4,
"hard_hit_percent": 46.6,
"exit_velocity_avg": 90.8,
"launch_angle_avg": 15.5,
"whiff_percent": 21.9,
"swing_percent": 43.3
},
"components": {
"expected_quality": 1.4383,
"regression_edge": 0.2857,
"xwoba_edge": 2.0571,
"xba_edge": 0.7143,
"xslg_edge": 1.5429,
"barrel_edge": 1.2,
"hard_hit_edge": 1.1071,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": 0.8667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "656775",
"player_name": "Cedric Mullins",
"offense_factor": 0.9457,
"quality_score": -0.724,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656775",
"espn_id": 35578,
"player_name": "Cedric Mullins",
"team": "TB",
"role": "batter",
"espn_rank": 493,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 493,
"gp_value": 55.0,
"gp_rank": "164",
"ab_value": 187.0,
"ab_rank": "146",
"r_value": 21.0,
"r_rank": "180",
"h_value": 34.0,
"h_rank": "217",
"avg_value": 0.1818181,
"avg_rank": 170.0,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 18.0,
"rbi_rank": "205",
"tb_value": 55.0,
"tb_rank": "1075",
"bb_value": 18.0,
"bb_rank": "147",
"so_value": 38.0,
"so_rank": "177",
"sb_value": 10.0,
"sb_rank": "27",
"obp_value": 0.2666666,
"obp_rank": "167",
"slg_value": 0.2941176,
"slg_rank": "169",
"ops_value": 0.5607842,
"ops_rank": 170.0,
"war_value": -0.4,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 176.0,
"k_percent": 17.7,
"bb_percent": 8.4,
"woba": 0.258,
"xwoba": 0.258,
"xba": 0.182,
"xslg": 0.301,
"sweet_spot_percent": 28.1,
"barrel_batted_rate": 3.3,
"hard_hit_percent": 30.5,
"exit_velocity_avg": 88.2,
"launch_angle_avg": 29.2,
"whiff_percent": 20.1,
"swing_percent": 48.9
},
"components": {
"expected_quality": -1.0524,
"regression_edge": 0.0,
"xwoba_edge": -1.3429,
"xba_edge": -1.6286,
"xslg_edge": -1.0429,
"barrel_edge": -0.8222,
"hard_hit_edge": -1.1929,
"exit_velocity_edge": -0.24,
"sweet_spot_edge": -0.8667,
"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": 156.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "CF",
"player_id": "678882",
"player_name": "Ceddanne Rafaela",
"offense_factor": 0.9831,
"quality_score": -0.2259,
"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": 15,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 15,
"gp_value": 60.0,
"gp_rank": "110",
"ab_value": 213.0,
"ab_rank": "111",
"r_value": 25.0,
"r_rank": "134",
"h_value": 61.0,
"h_rank": "53",
"avg_value": 0.2863849,
"avg_rank": 24.0,
"2b_value": 12.0,
"2b_rank": "54",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 24.0,
"rbi_rank": "140",
"tb_value": 92.0,
"tb_rank": "602",
"bb_value": 14.0,
"bb_rank": "195",
"so_value": 48.0,
"so_rank": "116",
"sb_value": 6.0,
"sb_rank": "68",
"obp_value": 0.3476394,
"obp_rank": "51",
"slg_value": 0.4319248,
"slg_rank": "73",
"ops_value": 0.7795642,
"ops_rank": 66.0,
"war_value": 2.68,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 195.0,
"k_percent": 20.6,
"bb_percent": 6.0,
"woba": 0.346,
"xwoba": 0.301,
"xba": 0.246,
"xslg": 0.363,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 37.0,
"exit_velocity_avg": 87.1,
"launch_angle_avg": 10.1,
"whiff_percent": 24.3,
"swing_percent": 51.1
},
"components": {
"expected_quality": -0.0871,
"regression_edge": -1.2857,
"xwoba_edge": -0.1143,
"xba_edge": 0.2,
"xslg_edge": -0.1571,
"barrel_edge": -0.0444,
"hard_hit_edge": -0.2643,
"exit_velocity_edge": -0.68,
"sweet_spot_edge": 0.7167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "680776",
"player_name": "Jarren Duran",
"offense_factor": 1.012,
"quality_score": 0.1604,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680776",
"espn_id": 41610,
"player_name": "Jarren Duran",
"team": "BOS",
"role": "batter",
"espn_rank": 137,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 137,
"gp_value": 58.0,
"gp_rank": "141",
"ab_value": 236.0,
"ab_rank": "45",
"r_value": 32.0,
"r_rank": "67",
"h_value": 50.0,
"h_rank": "113",
"avg_value": 0.2118644,
"avg_rank": 153.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 10.0,
"hr_rank": "49",
"rbi_value": 33.0,
"rbi_rank": "52",
"tb_value": 93.0,
"tb_rank": "410",
"bb_value": 18.0,
"bb_rank": "147",
"so_value": 73.0,
"so_rank": "20",
"sb_value": 11.0,
"sb_rank": "18",
"obp_value": 0.2741312,
"obp_rank": "163",
"slg_value": 0.3940677,
"slg_rank": "112",
"ops_value": 0.6681989,
"ops_rank": 134.0,
"war_value": 0.86,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 215.0,
"k_percent": 28.2,
"bb_percent": 6.9,
"woba": 0.294,
"xwoba": 0.302,
"xba": 0.232,
"xslg": 0.395,
"sweet_spot_percent": 30.9,
"barrel_batted_rate": 11.7,
"hard_hit_percent": 40.6,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 14.4,
"whiff_percent": 34.5,
"swing_percent": 47.2
},
"components": {
"expected_quality": 0.1537,
"regression_edge": 0.2286,
"xwoba_edge": -0.0857,
"xba_edge": -0.2,
"xslg_edge": 0.3,
"barrel_edge": 1.0444,
"hard_hit_edge": 0.25,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": -0.4,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "575929",
"player_name": "Willson Contreras",
"offense_factor": 1.1095,
"quality_score": 1.4601,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "575929",
"espn_id": 32532,
"player_name": "Willson Contreras",
"team": "BOS",
"role": "batter",
"espn_rank": 29,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 29,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 215.0,
"ab_rank": "103",
"r_value": 29.0,
"r_rank": "93",
"h_value": 64.0,
"h_rank": "39",
"avg_value": 0.2976744,
"avg_rank": 18.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 13.0,
"hr_rank": "26",
"rbi_value": 39.0,
"rbi_rank": "24",
"tb_value": 116.0,
"tb_rank": "267",
"bb_value": 25.0,
"bb_rank": "69",
"so_value": 63.0,
"so_rank": "46",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3913043,
"obp_rank": "12",
"slg_value": 0.5395348,
"slg_rank": "9",
"ops_value": 0.9308391,
"ops_rank": 7.0,
"war_value": 2.34,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 216.0,
"k_percent": 24.9,
"bb_percent": 9.9,
"woba": 0.403,
"xwoba": 0.399,
"xba": 0.278,
"xslg": 0.537,
"sweet_spot_percent": 34.2,
"barrel_batted_rate": 15.7,
"hard_hit_percent": 44.5,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 16.5,
"whiff_percent": 30.3,
"swing_percent": 48.0
},
"components": {
"expected_quality": 1.7478,
"regression_edge": -0.1143,
"xwoba_edge": 2.5,
"xba_edge": 1.1143,
"xslg_edge": 2.3286,
"barrel_edge": 1.9333,
"hard_hit_edge": 0.8071,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": 0.15,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "677800",
"player_name": "Wilyer Abreu",
"offense_factor": 1.0675,
"quality_score": 0.9004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677800",
"espn_id": 4990055,
"player_name": "Wilyer Abreu",
"team": "BOS",
"role": "batter",
"espn_rank": 19,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 19,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 241.0,
"ab_rank": "29",
"r_value": 28.0,
"r_rank": "104",
"h_value": 67.0,
"h_rank": "25",
"avg_value": 0.2780082,
"avg_rank": 41.0,
"2b_value": 12.0,
"2b_rank": "54",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 7.0,
"hr_rank": "100",
"rbi_value": 29.0,
"rbi_rank": "89",
"tb_value": 102.0,
"tb_rank": "495",
"bb_value": 24.0,
"bb_rank": "77",
"so_value": 51.0,
"so_rank": "93",
"sb_value": 4.0,
"sb_rank": "108",
"obp_value": 0.3408239,
"obp_rank": "69",
"slg_value": 0.4232365,
"slg_rank": "81",
"ops_value": 0.7640604,
"ops_rank": 79.0,
"war_value": 2.59,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 19.0,
"bb_percent": 9.0,
"woba": 0.337,
"xwoba": 0.348,
"xba": 0.271,
"xslg": 0.472,
"sweet_spot_percent": 33.7,
"barrel_batted_rate": 11.5,
"hard_hit_percent": 43.0,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 17.4,
"whiff_percent": 22.0,
"swing_percent": 48.4
},
"components": {
"expected_quality": 0.9958,
"regression_edge": 0.3143,
"xwoba_edge": 1.2286,
"xba_edge": 0.9143,
"xslg_edge": 1.4,
"barrel_edge": 1.0,
"hard_hit_edge": 0.5929,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.0667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "681508",
"player_name": "Mickey Gasper",
"offense_factor": 0.996,
"quality_score": -0.0528,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "681508",
"espn_id": 5132012,
"player_name": "Mickey Gasper",
"team": "BOS",
"role": "batter",
"espn_rank": 232,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 232,
"gp_value": 21.0,
"gp_rank": "387",
"ab_value": 66.0,
"ab_rank": "368",
"r_value": 10.0,
"r_rank": "318",
"h_value": 20.0,
"h_rank": "317",
"avg_value": 0.3030303,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 5.0,
"rbi_rank": "386",
"tb_value": 25.0,
"tb_rank": "2017",
"bb_value": 4.0,
"bb_rank": "385",
"so_value": 18.0,
"so_rank": "354",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3472222,
"obp_rank": "-",
"slg_value": 0.3787878,
"slg_rank": "-",
"ops_value": 0.72601,
"ops_rank": null,
"war_value": 0.31,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 45.0,
"k_percent": 24.7,
"bb_percent": 5.5,
"woba": 0.324,
"xwoba": 0.292,
"xba": 0.243,
"xslg": 0.358,
"sweet_spot_percent": 34.0,
"barrel_batted_rate": 6.0,
"hard_hit_percent": 48.0,
"exit_velocity_avg": 92.6,
"launch_angle_avg": 16.9,
"whiff_percent": 22.0,
"swing_percent": 43.6
},
"components": {
"expected_quality": 0.0123,
"regression_edge": -0.9143,
"xwoba_edge": -0.3714,
"xba_edge": 0.1143,
"xslg_edge": -0.2286,
"barrel_edge": -0.2222,
"hard_hit_edge": 1.3071,
"exit_velocity_edge": 1.52,
"sweet_spot_edge": 0.1167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "702332",
"player_name": "Caleb Durbin",
"offense_factor": 0.958,
"quality_score": -0.5602,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702332",
"espn_id": 5007615,
"player_name": "Caleb Durbin",
"team": "BOS",
"role": "batter",
"espn_rank": 168,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 168,
"gp_value": 57.0,
"gp_rank": "152",
"ab_value": 182.0,
"ab_rank": "155",
"r_value": 17.0,
"r_rank": "217",
"h_value": 35.0,
"h_rank": "209",
"avg_value": 0.1923076,
"avg_rank": 169.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 23.0,
"rbi_rank": "150",
"tb_value": 53.0,
"tb_rank": "1373",
"bb_value": 11.0,
"bb_rank": "245",
"so_value": 29.0,
"so_rank": "250",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.2525252,
"obp_rank": "172",
"slg_value": 0.2912087,
"slg_rank": "170",
"ops_value": 0.5437339,
"ops_rank": 171.0,
"war_value": 0.69,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 164.0,
"k_percent": 14.5,
"bb_percent": 5.5,
"woba": 0.246,
"xwoba": 0.268,
"xba": 0.23,
"xslg": 0.295,
"sweet_spot_percent": 23.7,
"barrel_batted_rate": 1.9,
"hard_hit_percent": 30.1,
"exit_velocity_avg": 85.3,
"launch_angle_avg": 8.1,
"whiff_percent": 15.4,
"swing_percent": 45.4
},
"components": {
"expected_quality": -0.9761,
"regression_edge": 0.6286,
"xwoba_edge": -1.0571,
"xba_edge": -0.2571,
"xslg_edge": -1.1286,
"barrel_edge": -1.1333,
"hard_hit_edge": -1.25,
"exit_velocity_edge": -1.4,
"sweet_spot_edge": -1.6,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "643396",
"player_name": "Isiah Kiner-Falefa",
"offense_factor": 0.9914,
"quality_score": -0.1148,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643396",
"espn_id": 33572,
"player_name": "Isiah Kiner-Falefa",
"team": "BOS",
"role": "batter",
"espn_rank": 166,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 166,
"gp_value": 38.0,
"gp_rank": "290",
"ab_value": 90.0,
"ab_rank": "318",
"r_value": 13.0,
"r_rank": "277",
"h_value": 24.0,
"h_rank": "280",
"avg_value": 0.2666666,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 12.0,
"rbi_rank": "273",
"tb_value": 30.0,
"tb_rank": "1969",
"bb_value": 8.0,
"bb_rank": "293",
"so_value": 15.0,
"so_rank": "379",
"sb_value": 4.0,
"sb_rank": "108",
"obp_value": 0.3265306,
"obp_rank": "-",
"slg_value": 0.3333333,
"slg_rank": "-",
"ops_value": 0.6598639,
"ops_rank": null,
"war_value": 0.69,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 65.0,
"k_percent": 15.2,
"bb_percent": 8.1,
"woba": 0.3,
"xwoba": 0.301,
"xba": 0.264,
"xslg": 0.347,
"sweet_spot_percent": 38.2,
"barrel_batted_rate": 4.0,
"hard_hit_percent": 27.6,
"exit_velocity_avg": 83.4,
"launch_angle_avg": 10.7,
"whiff_percent": 17.9,
"swing_percent": 52.0
},
"components": {
"expected_quality": -0.3012,
"regression_edge": 0.0286,
"xwoba_edge": -0.1143,
"xba_edge": 0.7143,
"xslg_edge": -0.3857,
"barrel_edge": -0.6667,
"hard_hit_edge": -1.6071,
"exit_velocity_edge": -2.16,
"sweet_spot_edge": 0.8167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "691785",
"player_name": "Marcelo Mayer",
"offense_factor": 0.9563,
"quality_score": -0.5832,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691785",
"espn_id": 4872648,
"player_name": "Marcelo Mayer",
"team": "BOS",
"role": "batter",
"espn_rank": 262,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 262,
"gp_value": 57.0,
"gp_rank": "152",
"ab_value": 165.0,
"ab_rank": "181",
"r_value": 16.0,
"r_rank": "230",
"h_value": 36.0,
"h_rank": "197",
"avg_value": 0.2181818,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": "214",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 14.0,
"rbi_rank": "247",
"tb_value": 48.0,
"tb_rank": "1581",
"bb_value": 12.0,
"bb_rank": "230",
"so_value": 33.0,
"so_rank": "215",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.2786885,
"obp_rank": "-",
"slg_value": 0.290909,
"slg_rank": "-",
"ops_value": 0.5695975,
"ops_rank": null,
"war_value": 0.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 158.0,
"k_percent": 17.9,
"bb_percent": 6.5,
"woba": 0.259,
"xwoba": 0.257,
"xba": 0.201,
"xslg": 0.292,
"sweet_spot_percent": 27.4,
"barrel_batted_rate": 6.0,
"hard_hit_percent": 37.0,
"exit_velocity_avg": 86.8,
"launch_angle_avg": 9.4,
"whiff_percent": 26.2,
"swing_percent": 51.0
},
"components": {
"expected_quality": -0.9349,
"regression_edge": -0.0571,
"xwoba_edge": -1.3714,
"xba_edge": -1.0857,
"xslg_edge": -1.1714,
"barrel_edge": -0.2222,
"hard_hit_edge": -0.2643,
"exit_velocity_edge": -0.8,
"sweet_spot_edge": -0.9833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "665966",
"player_name": "Carlos Narváez",
"offense_factor": 0.9919,
"quality_score": -0.1086,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665966",
"espn_id": 5012120,
"player_name": "Carlos Narvaez",
"team": "BOS",
"role": "batter",
"espn_rank": 377,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 377,
"gp_value": 38.0,
"gp_rank": "290",
"ab_value": 112.0,
"ab_rank": "277",
"r_value": 14.0,
"r_rank": "261",
"h_value": 24.0,
"h_rank": "280",
"avg_value": 0.2142857,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": "242",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 3.0,
"rbi_rank": "427",
"tb_value": 35.0,
"tb_rank": "1692",
"bb_value": 10.0,
"bb_rank": "261",
"so_value": 38.0,
"so_rank": "177",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2903225,
"obp_rank": "-",
"slg_value": 0.3125,
"slg_rank": "-",
"ops_value": 0.6028225,
"ops_rank": null,
"war_value": -0.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 113.0,
"k_percent": 30.4,
"bb_percent": 8.0,
"woba": 0.276,
"xwoba": 0.284,
"xba": 0.223,
"xslg": 0.334,
"sweet_spot_percent": 38.7,
"barrel_batted_rate": 6.7,
"hard_hit_percent": 37.3,
"exit_velocity_avg": 91.5,
"launch_angle_avg": 14.3,
"whiff_percent": 28.8,
"swing_percent": 52.9
},
"components": {
"expected_quality": -0.2831,
"regression_edge": 0.2286,
"xwoba_edge": -0.6,
"xba_edge": -0.4571,
"xslg_edge": -0.5714,
"barrel_edge": -0.0667,
"hard_hit_edge": -0.2214,
"exit_velocity_edge": 1.08,
"sweet_spot_edge": 0.9,
"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 BOS | True | 72 | -0.4448 | 0.9040 | 1.0378 | 0.9814 | 0.9855 | 1.1279 | neutral | 0.3370 | 0.3090 | 22.70 | 8.30 | 22.40 | 12.40 | 43.50 | |
| Home TB | True | 573 | -0.0138 | 0.4500 | 1.0012 | 1.0134 | 1.0189 | 1.0120 | neutral | 0.3120 | 0.3180 | 24.60 | 11.20 | 29.30 | 9.40 | 36.50 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away BOS | True | None | 89 | 88.33 | 2071 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0775 | |
| Home TB | True | None | 26 | 86.08 | 1950 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2032 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0005 |
| home_runs_vs_away_pitcher | 1.0342 |
| home_pitcher_quality_edge | 0.4310 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "693855",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 110.0,
"k_percent": 24.6,
"bb_percent": 11.2,
"woba": 0.318,
"xwoba": 0.312,
"sweet_spot_percent": 38.8,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 36.5,
"avg_best_speed": 78.2851,
"avg_hyper_speed": 93.5258,
"whiff_percent": 29.3,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1395,
"command_and_miss": 0.1793,
"regression_edge": 0.1714,
"xwoba_edge": 0.0714,
"barrel_edge": -0.5111,
"hard_hit_edge": 0.3,
"whiff_edge": 0.5,
"bb_edge": -0.525,
"pitch_design_score": -0.2032
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "693855",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 26,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 26,
"pitch_usage": 0.0,
"release_speed": 86.08107507049887,
"release_spin_rate": 1950.04193432647,
"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": 26,
"pitch_usage": 0.0,
"release_speed": 86.08107507049887,
"release_spin_rate": 1950.04193432647,
"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.0811,
"release_spin_rate": 1950.0419,
"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.2032,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4517,
"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.0138,
"sample_weight": 0.45,
"run_prevention_factor": 1.0012,
"strikeout_factor": 1.0134,
"walk_factor": 1.0189,
"homer_factor": 1.012,
"woba_minus_xwoba": 0.006,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "693855",
"espn_id": 4669425,
"player_name": "Ian Seymour",
"team": "TB",
"role": "pitcher",
"espn_rank": 573,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 573,
"gp_value": 26.0,
"gp_rank": 74,
"gs_value": 1.0,
"gs_rank": 229,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.2258,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 2.0,
"sv_rank": 51,
"hld_value": 10.0,
"hld_rank": 16,
"ip_value": 31.0,
"ip_rank": 186,
"h_value": 27.0,
"h_rank": 198,
"er_value": 18.0,
"er_rank": 149,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 33.0,
"k_rank": 181,
"k_per_9_value": 9.580646,
"k_per_9_rank": 26,
"whip_value": 1.3548,
"whip_rank": null,
"war_value": -0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "813349",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 226.0,
"k_percent": 22.7,
"bb_percent": 8.3,
"woba": 0.309,
"xwoba": 0.337,
"sweet_spot_percent": 37.1,
"barrel_batted_rate": 12.4,
"hard_hit_percent": 43.5,
"avg_best_speed": 80.7042,
"avg_hyper_speed": 94.8372,
"whiff_percent": 22.4,
"swing_percent": 47.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.6583,
"command_and_miss": -0.1429,
"regression_edge": -0.8,
"xwoba_edge": -0.6429,
"barrel_edge": -1.1778,
"hard_hit_edge": -0.7,
"whiff_edge": -0.4857,
"bb_edge": 0.2,
"pitch_design_score": -0.0775
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "813349",
"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": 88.32584587648121,
"release_spin_rate": 2071.080031201101,
"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": 88.32584587648121,
"release_spin_rate": 2071.080031201101,
"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.3258,
"release_spin_rate": 2071.08,
"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.0775,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.5537,
"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.4448,
"sample_weight": 0.904,
"run_prevention_factor": 1.0378,
"strikeout_factor": 0.9814,
"walk_factor": 0.9855,
"homer_factor": 1.1279,
"woba_minus_xwoba": -0.028,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "813349",
"espn_id": 4863321,
"player_name": "Connelly Early",
"team": "BOS",
"role": "pitcher",
"espn_rank": 72,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 72,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 5.0,
"qs_rank": 39,
"era_value": 3.2562,
"era_rank": 25.0,
"w_value": 5.0,
"w_rank": 26,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 66.1,
"ip_rank": 59,
"h_value": 55.0,
"h_rank": 89,
"er_value": 24.0,
"er_rank": 97,
"hr_value": 11.0,
"hr_rank": 23,
"bb_value": 23.0,
"bb_rank": 53,
"k_value": 63.0,
"k_rank": 53,
"k_per_9_value": 8.547739,
"k_per_9_rank": 24,
"whip_value": 1.1758,
"whip_rank": 35.0,
"war_value": 1.08,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0005,
"home_runs_vs_away_pitcher": 1.0342,
"home_pitcher_quality_edge": 0.431
},
"score_before": {
"away_runs": 2.5496,
"home_runs": 1.2179
},
"score_after": {
"away_runs": 2.551,
"home_runs": 1.2595,
"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 BOS | 13-42 | 0.236 | 1.30 | 3.30 | -112 | cold | strong | |
| Home TB | 13-44 | 0.228 | 1 | 3.10 | -120 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away BOS | 27-36 | 0.429 | -9 | -0.143 | True |
| Home TB | 37-25 | 0.597 | 7 | 0.113 | True |
| Signal | - | - | 0.256 | 0.508 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target BOS | - | - | 3 | - | - | - | - |
| Game target TB | - | - | 2 | - | - | - | - |
| Player finalized BOS | 55 | 13 | 8 | 0 | 5 | 4 | 13 |
| Player finalized TB | 50 | 11 | 6 | 0 | 7 | 6 | 11 |
| Player model fractional BOS | 53.63 | 12.59 | 6.51 | 1.33 | 5.97 | 4.30 | 12.79 |
| Player model fractional TB | 50.29 | 12.08 | 6.61 | 1.40 | 6.60 | 6.02 | 11.47 |
| Simulation box BOS | 34 | 7 | 4 | 2 | 4 | 1 | 4 |
| Simulation box TB | 32 | 5 | 1 | 1 | 1 | 2 | 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 BOS | Starter | Connelly Early | 6 | 1 | 1 | 3 | 1 | 3.40 | 1.15 | True |
| Away BOS | Middle Reliever | Aroldis Chapman | 1 | 0 | 1 | 2 | 0 | 2.50 | 1.20 | True |
| Away BOS | Middle Reliever | Greg Weissert | 1 | 0 | 1 | 0 | 1 | 3.54 | 1.16 | True |
| Away BOS | Middle Reliever | Justin Slaten | 1 | 0 | 1 | 0 | 0 | 6.42 | 1.50 | True |
| Home TB | Starter | Ian Seymour | 5 | 3 | 2 | 6 | 1 | 4.87 | 1.41 | True |
| Home TB | Middle Reliever | Bryan Baker | 1.10 | 0 | 0 | 0 | 0 | 2.72 | 1.21 | True |
| Home TB | Middle Reliever | Garrett Cleavinger | 1.20 | 0 | 1 | 0 | 0 | 4.53 | 1.32 | True |
| Home TB | Middle Reliever | Kevin Kelly | 1 | 1 | 1 | 1 | 0 | 3.58 | 1.26 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | BOS | batter | SS | Marcelo Mayer | better | 11 | 5 | 6 | 6 | 5 | predicted_RBI | 1.8700 | boost | better |
| home | TB | batter | LF | Austin Slater | worse | 10 | 2 | 8 | 3 | 7 | predicted_AB | 1.4890 | boost | better |
| home | TB | batter | DH | Yandy Díaz | worse | 10 | 3 | 7 | 4 | 6 | predicted_AB | -1.4700 | deboost | worse |
| away | BOS | batter | 2B | Isiah Kiner-Falefa | worse | 10 | 5 | 5 | 4 | 6 | predicted_H | 1.3800 | boost | better |
| home | TB | batter | C | Nick Fortes | worse | 11 | 2 | 9 | 3 | 8 | predicted_H | 1.3600 | boost | better |
| home | TB | batter | 2B | Ben Williamson | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 1.2760 | boost | worse |
| away | BOS | batter | RF | Wilyer Abreu | worse | 10 | 2 | 8 | 3 | 7 | predicted_AB | -1.2500 | deboost | worse |
| away | BOS | batter | LF | Jarren Duran | worse | 11 | 0 | 11 | 1 | 10 | predicted_SO | -1.2320 | deboost | better |
| away | BOS | batter | 3B | Caleb Durbin | better | 11 | 5 | 6 | 6 | 5 | predicted_H | 1.2300 | boost | better |
| away | BOS | batter | C | Carlos Narváez | worse | 11 | 0 | 11 | 1 | 10 | predicted_SO | -1.0850 | deboost | better |
| home | TB | batter | 1B | Jonathan Aranda | worse | 10 | 1 | 9 | 2 | 8 | predicted_SO | -1.0720 | deboost | better |
| home | TB | batter | RF | Ryan Vilade | worse | 11 | 4 | 7 | 3 | 8 | predicted_AB | 1.0000 | boost | better |
| home | TB | batter | 3B | Junior Caminero | better | 10 | 5 | 5 | 6 | 4 | predicted_HR | 0.8400 | boost | better |
| away | BOS | batter | DH | Mickey Gasper | worse | 10 | 2 | 8 | 1 | 9 | predicted_H | -0.8100 | deboost | worse |
| away | BOS | batter | 1B | Willson Contreras | better | 9 | 6 | 3 | 7 | 2 | predicted_HR | 0.8000 | boost | better |
| home | TB | batter | CF | Cedric Mullins | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -0.7320 | deboost | better |
| home | TB | batter | SS | Taylor Walls | worse | 11 | 1 | 10 | 1 | 10 | predicted_H | -0.6800 | deboost | worse |
| away | BOS | batter | CF | Ceddanne Rafaela | worse | 9 | 3 | 6 | 2 | 7 | predicted_R | -0.4710 | deboost | worse |
| home | TB | pitcher | Middle Reliever | Garrett Cleavinger | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
| home | TB | pitcher | Middle Reliever | Bryan Baker | 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 | Connelly Early |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.4448 |
| ESPN Rank | 72 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0775 |
| Avg Velo | 88.3258 |
| Avg Spin | 2071.0800 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 1 |
| Pre H | 3 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 3.2563 |
| Season WHIP | 1.1759 |
| Role Avg IP | 5.5280 |
| Recent Avg IP | 6.1330 |
| Last Start IP | 5.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"opponent": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"edges": {
"quality_edge": -0.144,
"offense_edge": -0.1554,
"opponent_offense_edge": -0.0418,
"defense_strength": 0.088,
"opponent_defense_weakness": -0.0333,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9986,
"run_prevention": 0.9917,
"strikeout": 0.999
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "813349",
"profile": {
"available": true,
"pitcher_id": "813349",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 226.0,
"k_percent": 22.7,
"bb_percent": 8.3,
"woba": 0.309,
"xwoba": 0.337,
"sweet_spot_percent": 37.1,
"barrel_batted_rate": 12.4,
"hard_hit_percent": 43.5,
"avg_best_speed": 80.7042,
"avg_hyper_speed": 94.8372,
"whiff_percent": 22.4,
"swing_percent": 47.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.6583,
"command_and_miss": -0.1429,
"regression_edge": -0.8,
"xwoba_edge": -0.6429,
"barrel_edge": -1.1778,
"hard_hit_edge": -0.7,
"whiff_edge": -0.4857,
"bb_edge": 0.2,
"pitch_design_score": -0.0775
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "813349",
"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": 88.32584587648121,
"release_spin_rate": 2071.080031201101,
"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": 88.32584587648121,
"release_spin_rate": 2071.080031201101,
"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.3258,
"release_spin_rate": 2071.08,
"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.0775,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.5537,
"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.4448,
"sample_weight": 0.904,
"run_prevention_factor": 1.0378,
"strikeout_factor": 0.9814,
"walk_factor": 0.9855,
"homer_factor": 1.1279,
"woba_minus_xwoba": -0.028,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "813349",
"espn_id": 4863321,
"player_name": "Connelly Early",
"team": "BOS",
"role": "pitcher",
"espn_rank": 72,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 72,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 5.0,
"qs_rank": 39,
"era_value": 3.2562,
"era_rank": 25.0,
"w_value": 5.0,
"w_rank": 26,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 66.1,
"ip_rank": 59,
"h_value": 55.0,
"h_rank": 89,
"er_value": 24.0,
"er_rank": 97,
"hr_value": 11.0,
"hr_rank": 23,
"bb_value": 23.0,
"bb_rank": 53,
"k_value": 63.0,
"k_rank": 53,
"k_per_9_value": 8.547739,
"k_per_9_rank": 24,
"whip_value": 1.1758,
"whip_rank": 35.0,
"war_value": 1.08,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0342,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.0342,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9869,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.1156,
"adjusted": 1
},
"predicted_SO": {
"original": 6.0,
"factor": 0.9832,
"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": 21,
"H": 47,
"BB": 17,
"SO": 53,
"HR": 11,
"ERA": 3.3157894736842106,
"WHIP": 1.1228070175438596,
"K9": 8.368421052631579,
"HR9": 1.736842105263158,
"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-02T00:00:00"
}{
"available": true,
"pitcher_id": "813349",
"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": 88.32584587648121,
"release_spin_rate": 2071.080031201101,
"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": 88.32584587648121,
"release_spin_rate": 2071.080031201101,
"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.3258,
"release_spin_rate": 2071.08,
"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.0775,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.5537,
"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": "813349",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 30.2,
"ER": 9.0,
"R": 9.0,
"H": 25.0,
"BB": 6.0,
"SO": 32.0,
"HR": 6.0,
"BF": 126.0,
"Pitches": 468.0
},
"per_game": {
"IP": 6.0,
"ER": 1.8,
"R": 1.8,
"H": 5.0,
"BB": 1.2,
"SO": 6.4,
"HR": 1.2,
"BF": 25.2,
"Pitches": 93.6
},
"rates": {
"ERA": 2.6413,
"WHIP": 1.0109,
"ER_per_IP": 0.29348,
"H_per_IP": 0.81522,
"BB_per_IP": 0.19565,
"SO_per_IP": 1.04348,
"HR_per_IP": 0.19565
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 57.0,
"ER": 21.0,
"R": 21.0,
"H": 47.0,
"BB": 17.0,
"SO": 53.0,
"HR": 11.0,
"BF": 237.0,
"Pitches": 900.0
},
"per_game": {
"IP": 5.2,
"ER": 2.1,
"R": 2.1,
"H": 4.7,
"BB": 1.7,
"SO": 5.3,
"HR": 1.1,
"BF": 23.7,
"Pitches": 90.0
},
"rates": {
"ERA": 3.3158,
"WHIP": 1.1228,
"ER_per_IP": 0.36842,
"H_per_IP": 0.82456,
"BB_per_IP": 0.29825,
"SO_per_IP": 0.92982,
"HR_per_IP": 0.19298
}
},
"season": {
"games": 12,
"totals": {
"IP": 66.1,
"ER": 24.0,
"R": 24.0,
"H": 55.0,
"BB": 23.0,
"SO": 63.0,
"HR": 11.0,
"BF": 277.0,
"Pitches": 1084.0
},
"per_game": {
"IP": 5.2,
"ER": 2.0,
"R": 2.0,
"H": 4.5833,
"BB": 1.9167,
"SO": 5.25,
"HR": 0.9167,
"BF": 23.0833,
"Pitches": 90.3333
},
"rates": {
"ERA": 3.2563,
"WHIP": 1.1759,
"ER_per_IP": 0.36181,
"H_per_IP": 0.82915,
"BB_per_IP": 0.34673,
"SO_per_IP": 0.94975,
"HR_per_IP": 0.16583
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 2.219,
"predicted_H": 5.057,
"predicted_BB": 1.714,
"predicted_SO": 5.695,
"predicted_HR": 1.023,
"predicted_ERA": 3.4012,
"predicted_WHIP": 1.1533
}
}{
"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": 6.0,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.219,
"final": 1.6409,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 5.057,
"final": 4.0815,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.714,
"final": 1.3754,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 5.695,
"final": 3.4684,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 1.023,
"final": 1.0121,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4012,
"final": 3.4012,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1533,
"final": 1.1533,
"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.2435 |
| ESPN Rank | 61 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2800 |
| Avg Velo | 94.7112 |
| Avg Spin | 2304.1363 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 0.4576 |
| Season WHIP | 0.9153 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"opponent": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"edges": {
"quality_edge": -0.144,
"offense_edge": -0.1554,
"opponent_offense_edge": -0.0418,
"defense_strength": 0.088,
"opponent_defense_weakness": -0.0333,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9986,
"run_prevention": 0.9917,
"strikeout": 0.999
},
"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": 33.8,
"bb_percent": 11.7,
"woba": 0.216,
"xwoba": 0.274,
"sweet_spot_percent": 19.5,
"barrel_batted_rate": 12.2,
"hard_hit_percent": 43.9,
"avg_best_speed": 75.7985,
"avg_hyper_speed": 95.6962,
"whiff_percent": 32.9,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.7924,
"command_and_miss": 0.9257,
"regression_edge": -1.6571,
"xwoba_edge": 1.1571,
"barrel_edge": -1.1333,
"hard_hit_edge": -0.7571,
"whiff_edge": 1.0143,
"bb_edge": -0.65,
"pitch_design_score": 0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "547973",
"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": 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": 14,
"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.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.2435,
"sample_weight": 0.45,
"run_prevention_factor": 0.9793,
"strikeout_factor": 1.0463,
"walk_factor": 1.0234,
"homer_factor": 1.0388,
"woba_minus_xwoba": -0.058,
"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": 61,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 61,
"gp_value": 20.0,
"gp_rank": 152,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 0.4576,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 13.0,
"sv_rank": 7,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 19.2,
"ip_rank": 356,
"h_value": 9.0,
"h_rank": 480,
"er_value": 1.0,
"er_rank": 599,
"hr_value": 0.0,
"hr_rank": 552,
"bb_value": 9.0,
"bb_rank": 298,
"k_value": 26.0,
"k_rank": 258,
"k_per_9_value": 11.898305,
"k_per_9_rank": 19,
"whip_value": 0.9152,
"whip_rank": null,
"war_value": 1.14,
"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.0105,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0175,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0208,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "547973",
"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": 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": 14,
"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.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.883,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4372,
"prior_weight": 0.5628
},
"role": "pitcher",
"player_id": "547973",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 20,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 4.0,
"SO": 5.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 79.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.8,
"SO": 1.0,
"HR": 0.0,
"BF": 4.4,
"Pitches": 15.8
},
"rates": {
"ERA": 0.0,
"WHIP": 1.2,
"ER_per_IP": 0.0,
"H_per_IP": 0.4,
"BB_per_IP": 0.8,
"SO_per_IP": 1.0,
"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": 159.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.9
},
"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": 20,
"totals": {
"IP": 19.2,
"ER": 1.0,
"R": 1.0,
"H": 9.0,
"BB": 9.0,
"SO": 26.0,
"HR": 0.0,
"BF": 77.0,
"Pitches": 297.0
},
"per_game": {
"IP": 1.0,
"ER": 0.05,
"R": 0.05,
"H": 0.45,
"BB": 0.45,
"SO": 1.3,
"HR": 0.0,
"BF": 3.85,
"Pitches": 14.85
},
"rates": {
"ERA": 0.4576,
"WHIP": 0.9153,
"ER_per_IP": 0.05085,
"H_per_IP": 0.45763,
"BB_per_IP": 0.45763,
"SO_per_IP": 1.32203,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.277,
"predicted_H": 0.703,
"predicted_BB": 0.494,
"predicted_SO": 1.068,
"predicted_HR": 0.078,
"predicted_ERA": 2.4957,
"predicted_WHIP": 1.1978
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5878,
"form_weight": 0.4122,
"form_reliability": 0.4372,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.883,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4372,
"prior_weight": 0.5628
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.277,
"final": 0.1142,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.703,
"final": 1.4654,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.494,
"final": 0.2036,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.068,
"final": 1.028,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.078,
"final": 0.0322,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.4957,
"final": 2.4957,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1978,
"final": 1.1978,
"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 | Greg Weissert |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1562 |
| ESPN Rank | 501 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0148 |
| Avg Velo | 89.9749 |
| Avg Spin | 2317.3869 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 3.6000 |
| Season WHIP | 1.2000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"opponent": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"edges": {
"quality_edge": -0.144,
"offense_edge": -0.1554,
"opponent_offense_edge": -0.0418,
"defense_strength": 0.088,
"opponent_defense_weakness": -0.0333,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9986,
"run_prevention": 0.9917,
"strikeout": 0.999
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669711",
"profile": {
"available": true,
"pitcher_id": "669711",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 93.0,
"k_percent": 23.1,
"bb_percent": 7.4,
"woba": 0.331,
"xwoba": 0.292,
"sweet_spot_percent": 28.8,
"barrel_batted_rate": 5.5,
"hard_hit_percent": 31.5,
"avg_best_speed": 75.8264,
"avg_hyper_speed": 93.1376,
"whiff_percent": 23.5,
"swing_percent": 46.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.4265,
"command_and_miss": -0.0171,
"regression_edge": 1.1143,
"xwoba_edge": 0.6429,
"barrel_edge": 0.3556,
"hard_hit_edge": 1.0143,
"whiff_edge": -0.3286,
"bb_edge": 0.425,
"pitch_design_score": 0.0148
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669711",
"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": 89.97485648052537,
"release_spin_rate": 2317.3869084346134,
"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": 89.97485648052537,
"release_spin_rate": 2317.3869084346134,
"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.9749,
"release_spin_rate": 2317.3869,
"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.0148,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1059,
"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.1562,
"sample_weight": 0.45,
"run_prevention_factor": 0.9867,
"strikeout_factor": 0.9946,
"walk_factor": 0.9847,
"homer_factor": 0.9603,
"woba_minus_xwoba": 0.039,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "669711",
"espn_id": 41485,
"player_name": "Greg Weissert",
"team": "BOS",
"role": "pitcher",
"espn_rank": 501,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 501,
"gp_value": 26.0,
"gp_rank": 74,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.96,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 4.0,
"hld_rank": 104,
"ip_value": 25.0,
"ip_rank": 285,
"h_value": 25.0,
"h_rank": 224,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 5.0,
"hr_rank": 132,
"bb_value": 8.0,
"bb_rank": 324,
"k_value": 25.0,
"k_rank": 270,
"k_per_9_value": 9.0,
"k_per_9_rank": 25,
"whip_value": 1.32,
"whip_rank": null,
"war_value": -0.15,
"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.9931,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9821,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9976,
"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": 3,
"SO": 7,
"HR": 1,
"ERA": 1.7419354838709677,
"WHIP": 0.8709677419354839,
"K9": 6.096774193548387,
"HR9": 0.8709677419354839,
"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-02T00:00:00"
}{
"available": true,
"pitcher_id": "669711",
"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": 89.97485648052537,
"release_spin_rate": 2317.3869084346134,
"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": 89.97485648052537,
"release_spin_rate": 2317.3869084346134,
"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.9749,
"release_spin_rate": 2317.3869,
"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.0148,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1059,
"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.937,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4968,
"prior_weight": 0.5032
},
"role": "pitcher",
"player_id": "669711",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 2.0,
"SO": 6.0,
"HR": 1.0,
"BF": 23.0,
"Pitches": 94.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.4,
"SO": 1.2,
"HR": 0.2,
"BF": 4.6,
"Pitches": 18.8
},
"rates": {
"ERA": 3.1765,
"WHIP": 1.0588,
"ER_per_IP": 0.35294,
"H_per_IP": 0.70588,
"BB_per_IP": 0.35294,
"SO_per_IP": 1.05882,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.1,
"ER": 2.0,
"R": 2.0,
"H": 6.0,
"BB": 3.0,
"SO": 7.0,
"HR": 1.0,
"BF": 43.0,
"Pitches": 172.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.3,
"SO": 0.7,
"HR": 0.1,
"BF": 4.3,
"Pitches": 17.2
},
"rates": {
"ERA": 1.5882,
"WHIP": 0.7941,
"ER_per_IP": 0.17647,
"H_per_IP": 0.52941,
"BB_per_IP": 0.26471,
"SO_per_IP": 0.61765,
"HR_per_IP": 0.08824
}
},
"season": {
"games": 25,
"totals": {
"IP": 25.0,
"ER": 10.0,
"R": 11.0,
"H": 23.0,
"BB": 7.0,
"SO": 25.0,
"HR": 5.0,
"BF": 105.0,
"Pitches": 410.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.44,
"H": 0.92,
"BB": 0.28,
"SO": 1.0,
"HR": 0.2,
"BF": 4.2,
"Pitches": 16.4
},
"rates": {
"ERA": 3.6,
"WHIP": 1.2,
"ER_per_IP": 0.4,
"H_per_IP": 0.92,
"BB_per_IP": 0.28,
"SO_per_IP": 1.0,
"HR_per_IP": 0.2
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.393,
"predicted_H": 0.823,
"predicted_BB": 0.336,
"predicted_SO": 0.914,
"predicted_HR": 0.145,
"predicted_ERA": 3.5397,
"predicted_WHIP": 1.1592
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5626,
"form_weight": 0.4374,
"form_reliability": 0.4968,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.937,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4968,
"prior_weight": 0.5032
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.393,
"final": 0.1719,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.823,
"final": 0.36,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.336,
"final": 0.7096,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.914,
"final": 0.9624,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.145,
"final": 0.0634,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5397,
"final": 3.5397,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1592,
"final": 1.1592,
"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.1187 |
| ESPN Rank | 618 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1646 |
| Avg Velo | 92.6503 |
| Avg Spin | 2527.9024 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 6.1714 |
| Season WHIP | 1.4571 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"opponent": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"edges": {
"quality_edge": -0.144,
"offense_edge": -0.1554,
"opponent_offense_edge": -0.0418,
"defense_strength": 0.088,
"opponent_defense_weakness": -0.0333,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9986,
"run_prevention": 0.9917,
"strikeout": 0.999
},
"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": 30.8,
"bb_percent": 9.6,
"woba": 0.349,
"xwoba": 0.299,
"sweet_spot_percent": 38.7,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 41.9,
"avg_best_speed": 77.2689,
"avg_hyper_speed": 94.1251,
"whiff_percent": 28.3,
"swing_percent": 49.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.0899,
"command_and_miss": 0.6079,
"regression_edge": 1.4286,
"xwoba_edge": 0.4429,
"barrel_edge": 0.1333,
"hard_hit_edge": -0.4714,
"whiff_edge": 0.3571,
"bb_edge": -0.125,
"pitch_design_score": 0.1646
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "686580",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"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": 19,
"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.1646,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.176,
"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.1187,
"sample_weight": 0.45,
"run_prevention_factor": 0.9899,
"strikeout_factor": 1.0267,
"walk_factor": 1.0045,
"homer_factor": 0.9977,
"woba_minus_xwoba": 0.05,
"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": 618,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 618,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.1714,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 11.2,
"ip_rank": 443,
"h_value": 12.0,
"h_rank": 423,
"er_value": 8.0,
"er_rank": 349,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 5.0,
"bb_rank": 443,
"k_value": 16.0,
"k_rank": 368,
"k_per_9_value": 12.342857,
"k_per_9_rank": 22,
"whip_value": 1.4571,
"whip_rank": null,
"war_value": -0.46,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9955,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9955,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.002,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.999,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.012,
"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": 8,
"H": 11,
"BB": 3,
"SO": 12,
"HR": 3,
"ERA": 7.714285714285715,
"WHIP": 1.5000000000000002,
"K9": 11.571428571428573,
"HR9": 2.8928571428571432,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "686580",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"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": 19,
"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.1646,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.176,
"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.304,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3154,
"prior_weight": 0.6846
},
"role": "pitcher",
"player_id": "686580",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 8.0,
"R": 8.0,
"H": 8.0,
"BB": 3.0,
"SO": 7.0,
"HR": 3.0,
"BF": 25.0,
"Pitches": 90.0
},
"per_game": {
"IP": 1.0,
"ER": 1.6,
"R": 1.6,
"H": 1.6,
"BB": 0.6,
"SO": 1.4,
"HR": 0.6,
"BF": 5.0,
"Pitches": 18.0
},
"rates": {
"ERA": 15.4286,
"WHIP": 2.3571,
"ER_per_IP": 1.71429,
"H_per_IP": 1.71429,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.5,
"HR_per_IP": 0.64286
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 8.0,
"R": 8.0,
"H": 11.0,
"BB": 3.0,
"SO": 12.0,
"HR": 3.0,
"BF": 42.0,
"Pitches": 163.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.1,
"BB": 0.3,
"SO": 1.2,
"HR": 0.3,
"BF": 4.2,
"Pitches": 16.3
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.5,
"ER_per_IP": 0.85714,
"H_per_IP": 1.17857,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.32143
}
},
"season": {
"games": 13,
"totals": {
"IP": 11.2,
"ER": 8.0,
"R": 9.0,
"H": 12.0,
"BB": 5.0,
"SO": 16.0,
"HR": 3.0,
"BF": 52.0,
"Pitches": 200.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6154,
"R": 0.6923,
"H": 0.9231,
"BB": 0.3846,
"SO": 1.2308,
"HR": 0.2308,
"BF": 4.0,
"Pitches": 15.3846
},
"rates": {
"ERA": 6.1714,
"WHIP": 1.4571,
"ER_per_IP": 0.68571,
"H_per_IP": 1.02857,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.37143,
"HR_per_IP": 0.25714
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.713,
"predicted_H": 1.094,
"predicted_BB": 0.403,
"predicted_SO": 1.081,
"predicted_HR": 0.238,
"predicted_ERA": 6.4178,
"predicted_WHIP": 1.4971
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6392,
"form_weight": 0.3608,
"form_reliability": 0.3154,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.304,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3154,
"prior_weight": 0.6846
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.713,
"final": 0.2572,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.094,
"final": 0.3947,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.403,
"final": 0.1454,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.081,
"final": 1.0292,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.238,
"final": 0.0859,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.4178,
"final": 6.4178,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4971,
"final": 1.4971,
"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.191 | 0.000 | -0.191 | 0.000 |
| predicted_3B | 0.049 | 0.000 | 0.000 | Hitting_3B | 0.048 | 0.000 | -0.048 | 0.000 |
| predicted_AB | 3.940 | 4.000 | 7.000 | Hitting_AB | 3.751 | 4.000 | 0.249 | 0.000 |
| predicted_AVG | 0.259 | 0.250 | 0.286 | Hitting_AVG | 0.284 | 0.500 | -0.034 | -0.250 |
| predicted_BB | 0.257 | 0.000 | 0.000 | Hitting_BB | 0.254 | 0.000 | -0.254 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.081 | 0.000 | -0.081 | 0.000 |
| predicted_H | 1.020 | 1.000 | 2.000 | Hitting_H | 1.067 | 2.000 | -0.067 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.086 | 0.000 | -0.086 | 0.000 |
| predicted_OBP | 0.343 | 0.250 | 0.286 | Hitting_OBP | 0.350 | 0.500 | -0.100 | -0.250 |
| predicted_R | 0.471 | 0.000 | 1.000 | Hitting_R | 0.464 | 1.000 | -0.464 | -1.000 |
| predicted_RBI | 0.400 | 0.000 | 1.000 | Hitting_RBI | 0.431 | 0.000 | -0.431 | 0.000 |
| predicted_SLG | 0.410 | 0.250 | 0.286 | Hitting_SLG | 0.430 | 0.500 | -0.180 | -0.250 |
| predicted_SO | 0.879 | 1.000 | 2.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 | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 0.8790 -> 1.0000 (boost 0.1210, worse) |
| Biggest Deboost | predicted_R: 0.4710 -> 0.0000 (deboost -0.4710, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.9400 -> 6.6880 (boost 2.7480, 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.3503 -> 0.3262 (deboost -0.0241, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 3 | 6 | predicted_SO: 1.4753 -> 2.0000 (boost 0.5247, worse) | predicted_BB: 0.4150 -> 0.0000 (deboost -0.4150, worse) | AB rounded to 7 (raw=6.69), rates preserved: AVG=0.284 HR/AB=0.018 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7257 -> 1.0000 (boost 0.2743, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4140 -> 0.2860 (deboost -0.1280, 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: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2860 -> 0.4140 (boost 0.1280, 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.194,
"predicted_3B": 0.049,
"predicted_AB": 3.94,
"predicted_AVG": 0.259,
"predicted_BB": 0.257,
"predicted_H": 1.02,
"predicted_HR": 0.1,
"predicted_OBP": 0.343,
"predicted_R": 0.471,
"predicted_RBI": 0.4,
"predicted_SLG": 0.41,
"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.3714,
"predicted_3B": 0.064,
"predicted_AB": 6.688,
"predicted_AVG": 0.2797,
"predicted_BB": 0.4194,
"predicted_H": 1.943,
"predicted_HBP": 0.216,
"predicted_HR": 0.126,
"predicted_OBP": 0.3503,
"predicted_R": 0.7523,
"predicted_RBI": 0.628,
"predicted_SLG": 0.4179,
"predicted_SO": 1.46
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.3714,
"delta": 0.1774,
"percent_delta": 0.9144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.049,
"after": 0.064,
"delta": 0.015,
"percent_delta": 0.3061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.94,
"after": 6.688,
"delta": 2.748,
"percent_delta": 0.6975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2797,
"delta": 0.0207,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.257,
"after": 0.4194,
"delta": 0.1624,
"percent_delta": 0.6319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.943,
"delta": 0.923,
"percent_delta": 0.9049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.126,
"delta": 0.026,
"percent_delta": 0.26,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3503,
"delta": 0.0073,
"percent_delta": 0.0213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.471,
"after": 0.7523,
"delta": 0.2813,
"percent_delta": 0.5972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.628,
"delta": 0.228,
"percent_delta": 0.57,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.41,
"after": 0.4179,
"delta": 0.0079,
"percent_delta": 0.0193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.879,
"after": 1.46,
"delta": 0.581,
"percent_delta": 0.661,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.94,
"after": 6.688,
"delta": 2.748,
"percent_delta": 0.6975,
"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": 8,
"season": 58
}
},
{
"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.3714,
"predicted_3B": 0.064,
"predicted_AB": 6.688,
"predicted_AVG": 0.2844,
"predicted_BB": 0.415,
"predicted_H": 1.9022,
"predicted_HBP": 0.216,
"predicted_HR": 0.1223,
"predicted_OBP": 0.3262,
"predicted_R": 0.7257,
"predicted_RBI": 0.6058,
"predicted_SLG": 0.414,
"predicted_SO": 1.4753
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3714,
"after": 0.3714,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.064,
"after": 0.064,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.688,
"after": 6.688,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2797,
"after": 0.2844,
"delta": 0.0047,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4194,
"after": 0.415,
"delta": -0.0044,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.943,
"after": 1.9022,
"delta": -0.0408,
"percent_delta": -0.021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.216,
"after": 0.216,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.126,
"after": 0.1223,
"delta": -0.0037,
"percent_delta": -0.0294,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3503,
"after": 0.3262,
"delta": -0.0241,
"percent_delta": -0.0688,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7523,
"after": 0.7257,
"delta": -0.0266,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.628,
"after": 0.6058,
"delta": -0.0222,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4179,
"after": 0.414,
"delta": -0.0039,
"percent_delta": -0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.46,
"after": 1.4753,
"delta": 0.0153,
"percent_delta": 0.0105,
"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.3503,
"after": 0.3262,
"delta": -0.0241,
"percent_delta": -0.0688,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.69), rates preserved: AVG=0.284 HR/AB=0.018",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3714,
"after": 0.0,
"delta": -0.3714,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.688,
"after": 7.0,
"delta": 0.312,
"percent_delta": 0.0467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.415,
"after": 0.0,
"delta": -0.415,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9022,
"after": 2.0,
"delta": 0.0978,
"percent_delta": 0.0514,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.216,
"after": 0.0,
"delta": -0.216,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1223,
"after": 0.0,
"delta": -0.1223,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6058,
"after": 1.0,
"delta": 0.3942,
"percent_delta": 0.6507,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4753,
"after": 2.0,
"delta": 0.5247,
"percent_delta": 0.3557,
"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.4753,
"after": 2.0,
"delta": 0.5247,
"percent_delta": 0.3557,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.415,
"after": 0.0,
"delta": -0.415,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.7257,
"after": 1.0,
"delta": 0.2743,
"percent_delta": 0.378,
"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": 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_R",
"before": 0.7257,
"after": 1.0,
"delta": 0.2743,
"percent_delta": 0.378,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2844,
"after": 0.286,
"delta": 0.0016,
"percent_delta": 0.0056,
"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": 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_OBP",
"before": 0.3262,
"after": 0.286,
"delta": -0.0402,
"percent_delta": -0.1232,
"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.414,
"after": 0.286,
"delta": -0.128,
"percent_delta": -0.3092,
"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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.286,
"delta": -0.128,
"percent_delta": -0.3092,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 0,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2844,
"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.3262,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.414,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.286,
"after": 0.2844,
"delta": -0.0016,
"percent_delta": -0.0055,
"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.286,
"after": 0.3262,
"delta": 0.0402,
"percent_delta": 0.1407,
"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.286,
"after": 0.414,
"delta": 0.128,
"percent_delta": 0.4474,
"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.286,
"after": 0.414,
"delta": 0.128,
"percent_delta": 0.4474,
"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.049,
"after": 0.0,
"delta": -0.049,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.94,
"after": 4.0,
"delta": 0.06,
"percent_delta": 0.0152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2844,
"delta": 0.0254,
"percent_delta": 0.0981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.257,
"after": 0.0,
"delta": -0.257,
"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.343,
"after": 0.3262,
"delta": -0.0168,
"percent_delta": -0.049,
"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.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.41,
"after": 0.414,
"delta": 0.004,
"percent_delta": 0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.879,
"after": 1.0,
"delta": 0.121,
"percent_delta": 0.1377,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.471,
"after": 0.0,
"delta": -0.471,
"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.049 | - |
| predicted_AB | 3.940 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.257 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.343 | - |
| predicted_R | 0.471 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.410 | - |
| 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.371 | 0.177 |
| predicted_3B | 0.064 | 0.015 |
| predicted_AB | 6.688 | 2.748 |
| predicted_AVG | 0.280 | 0.021 |
| predicted_BB | 0.419 | 0.162 |
| predicted_H | 1.943 | 0.923 |
| predicted_HBP | 0.216 | - |
| predicted_HR | 0.126 | 0.026 |
| predicted_OBP | 0.350 | 0.007 |
| predicted_R | 0.752 | 0.281 |
| predicted_RBI | 0.628 | 0.228 |
| predicted_SLG | 0.418 | 0.008 |
| predicted_SO | 1.460 | 0.581 |
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.371 | 0.000 |
| predicted_3B | 0.064 | 0.000 |
| predicted_AB | 6.688 | 0.000 |
| predicted_AVG | 0.284 | 0.005 |
| predicted_BB | 0.415 | -0.004 |
| predicted_H | 1.902 | -0.041 |
| predicted_HBP | 0.216 | 0.000 |
| predicted_HR | 0.122 | -0.004 |
| predicted_OBP | 0.326 | -0.024 |
| predicted_R | 0.726 | -0.027 |
| predicted_RBI | 0.606 | -0.022 |
| predicted_SLG | 0.414 | -0.004 |
| predicted_SO | 1.475 | 0.015 |
AB rounded to 7 (raw=6.69), rates preserved: AVG=0.284 HR/AB=0.018
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 0.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.371 |
| predicted_3B | 0.000 | -0.064 |
| predicted_AB | 7.000 | 0.312 |
| predicted_AVG | 0.286 | 0.002 |
| predicted_BB | 0.000 | -0.415 |
| predicted_H | 2.000 | 0.098 |
| predicted_HR | 0.000 | -0.122 |
| predicted_OBP | 0.286 | -0.040 |
| predicted_R | 1.000 | 0.274 |
| predicted_RBI | 1.000 | 0.394 |
| predicted_SLG | 0.286 | -0.128 |
| predicted_SO | 2.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 | -3.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | -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 | 8.000 | 1.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 3.000 | 0.4000 | 0.4286 | 0.4500 | 0.4000 | 0.0000 | 0.0500 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 8 | - | 44.000 | 12.000 | 5.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 11.000 | 0.2727 | 0.3043 | 0.3864 | 0.2727 | 0.0000 | 0.0227 | 0.0454 | 0.2500 |
| season | 0.60 | 58 | - | 784.000 | 223.000 | 40.000 | 10.000 | 18.000 | 90.000 | 97.000 | 53.000 | 181.000 | 0.2844 | 0.3499 | 0.4298 | 0.2844 | 0.0230 | 0.1148 | 0.0676 | 0.2309 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5970 |
| predicted_3B | 0.0830 |
| predicted_AB | 10.1830 |
| predicted_AVG | 0.3061 |
| predicted_BB | 0.6260 |
| predicted_H | 3.1170 |
| predicted_HBP | 0.2160 |
| predicted_HR | 0.1590 |
| predicted_OBP | 0.3595 |
| predicted_R | 1.1100 |
| predicted_RBI | 0.9180 |
| predicted_SLG | 0.4279 |
| predicted_SO | 2.1990 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1940 | 0.5970 | 0.3714 | model_form_blend |
| predicted_3B | 0.0490 | 0.0830 | 0.0640 | model_form_blend |
| predicted_AB | 3.9400 | 10.1830 | 6.6880 | model_form_blend |
| predicted_AVG | 0.2590 | 0.3061 | 0.2797 | model_form_blend |
| predicted_BB | 0.2570 | 0.6260 | 0.4194 | model_form_blend |
| predicted_H | 1.0200 | 3.1170 | 1.9430 | model_form_blend |
| predicted_HBP | - | 0.2160 | 0.2160 | form_only |
| predicted_HR | 0.1000 | 0.1590 | 0.1260 | model_form_blend |
| predicted_OBP | 0.3430 | 0.3595 | 0.3503 | model_form_blend |
| predicted_R | 0.4710 | 1.1100 | 0.7523 | model_form_blend |
| predicted_RBI | 0.4000 | 0.9180 | 0.6280 | model_form_blend |
| predicted_SLG | 0.4100 | 0.4279 | 0.4179 | model_form_blend |
| predicted_SO | 0.8790 | 2.1990 | 1.4600 | 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 | 209 |
| Season rows before report date | 209 |
| Report year | 2026 |
| Profile rows used | 206 |
| 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.284 |
| 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 | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | CF |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 678882 |
| playerID | 678882 |
| playerName | Ceddanne Rafaela |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 20.6 |
| sl_bb_percent | 6.0 |
| sl_woba | 0.346 |
| sl_xwoba | 0.301 |
| sl_xba | 0.246 |
| sl_xslg | 0.363 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 37.0 |
| sl_exit_velocity_avg | 87.1 |
| sl_launch_angle_avg | 10.1 |
| sl_whiff_percent | 24.3 |
| 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.180 | 0.000 | 0.000 | Hitting_2B | 0.179 | 0.000 | -0.179 | 0.000 |
| predicted_3B | 0.009 | 0.000 | 0.000 | Hitting_3B | 0.009 | 0.000 | -0.009 | 0.000 |
| predicted_AB | 4.590 | 4.000 | 8.000 | Hitting_AB | 4.153 | 4.000 | -0.153 | 0.000 |
| predicted_AVG | 0.216 | 0.000 | 0.250 | Hitting_AVG | 0.215 | 0.000 | -0.215 | 0.000 |
| predicted_BB | 0.355 | 0.000 | 1.000 | Hitting_BB | 0.354 | 0.000 | -0.354 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.990 | 0.000 | 2.000 | Hitting_H | 0.891 | 0.000 | -0.891 | 0.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.166 | 0.000 | -0.166 | 0.000 |
| predicted_OBP | 0.273 | 0.000 | 0.333 | Hitting_OBP | 0.285 | 0.000 | -0.285 | 0.000 |
| predicted_R | 0.566 | 0.000 | 1.000 | Hitting_R | 0.563 | 0.000 | -0.563 | 0.000 |
| predicted_RBI | 0.500 | 0.000 | 1.000 | Hitting_RBI | 0.594 | 0.000 | -0.594 | 0.000 |
| predicted_SLG | 0.389 | 0.000 | 0.250 | Hitting_SLG | 0.382 | 0.000 | -0.382 | 0.000 |
| predicted_SO | 1.232 | 0.000 | 2.000 | Hitting_SO | 1.227 | 0.000 | -1.227 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 11 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | - |
| Biggest Deboost | predicted_SO: 1.2320 -> 0.0000 (deboost -1.2320, 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 | 12 | 9 | 3 | 8 | 4 | predicted_AB: 4.5900 -> 7.7381 (boost 3.1481, better) | predicted_SLG: 0.3890 -> 0.3736 (deboost -0.0154, 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.3736 -> 0.3521 (deboost -0.0215, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 5 | 4 | predicted_BB: 0.5100 -> 1.0000 (boost 0.4900, better) | predicted_SO: 2.3466 -> 2.0000 (deboost -0.3466, better) | AB rounded to 8 (raw=7.74), rates preserved: AVG=0.200 HR/AB=0.033 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2499 -> 0.3330 (boost 0.0831, better) | predicted_SLG: 0.3521 -> 0.2500 (deboost -0.1021, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3521 (boost 0.1021, better) | predicted_OBP: 0.3330 -> 0.2499 (deboost -0.0831, 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.18,
"predicted_3B": 0.009,
"predicted_AB": 4.59,
"predicted_AVG": 0.216,
"predicted_BB": 0.355,
"predicted_H": 0.99,
"predicted_HR": 0.17,
"predicted_OBP": 0.273,
"predicted_R": 0.566,
"predicted_RBI": 0.5,
"predicted_SLG": 0.389,
"predicted_SO": 1.232
},
"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.2432,
"predicted_3B": 0.081,
"predicted_AB": 7.7381,
"predicted_AVG": 0.2087,
"predicted_BB": 0.5154,
"predicted_H": 1.5844,
"predicted_HBP": 0.115,
"predicted_HR": 0.2637,
"predicted_OBP": 0.2623,
"predicted_R": 1.0251,
"predicted_RBI": 0.8814,
"predicted_SLG": 0.3736,
"predicted_SO": 2.3222
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.18,
"after": 0.2432,
"delta": 0.0632,
"percent_delta": 0.3511,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.081,
"delta": 0.072,
"percent_delta": 8.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.59,
"after": 7.7381,
"delta": 3.1481,
"percent_delta": 0.6859,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.216,
"after": 0.2087,
"delta": -0.0073,
"percent_delta": -0.0338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.355,
"after": 0.5154,
"delta": 0.1604,
"percent_delta": 0.4518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.5844,
"delta": 0.5944,
"percent_delta": 0.6004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.2637,
"delta": 0.0937,
"percent_delta": 0.5512,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.273,
"after": 0.2623,
"delta": -0.0107,
"percent_delta": -0.0392,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.566,
"after": 1.0251,
"delta": 0.4591,
"percent_delta": 0.8111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.8814,
"delta": 0.3814,
"percent_delta": 0.7628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3736,
"delta": -0.0154,
"percent_delta": -0.0396,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.232,
"after": 2.3222,
"delta": 1.0902,
"percent_delta": 0.8849,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 9,
"deboosted_metrics": 3,
"better_metrics": 8,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.59,
"after": 7.7381,
"delta": 3.1481,
"percent_delta": 0.6859,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3736,
"delta": -0.0154,
"percent_delta": -0.0396,
"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": 9,
"season": 58
}
},
{
"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.2432,
"predicted_3B": 0.081,
"predicted_AB": 7.7381,
"predicted_AVG": 0.2005,
"predicted_BB": 0.51,
"predicted_H": 1.5511,
"predicted_HBP": 0.115,
"predicted_HR": 0.256,
"predicted_OBP": 0.2499,
"predicted_R": 0.9888,
"predicted_RBI": 0.8502,
"predicted_SLG": 0.3521,
"predicted_SO": 2.3466
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2432,
"after": 0.2432,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.081,
"after": 0.081,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.7381,
"after": 7.7381,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2087,
"after": 0.2005,
"delta": -0.0082,
"percent_delta": -0.0393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5154,
"after": 0.51,
"delta": -0.0054,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5844,
"after": 1.5511,
"delta": -0.0333,
"percent_delta": -0.021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.115,
"after": 0.115,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2637,
"after": 0.256,
"delta": -0.0077,
"percent_delta": -0.0292,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2623,
"after": 0.2499,
"delta": -0.0124,
"percent_delta": -0.0473,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0251,
"after": 0.9888,
"delta": -0.0363,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8814,
"after": 0.8502,
"delta": -0.0312,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3736,
"after": 0.3521,
"delta": -0.0215,
"percent_delta": -0.0575,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3222,
"after": 2.3466,
"delta": 0.0244,
"percent_delta": 0.0105,
"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.3736,
"after": 0.3521,
"delta": -0.0215,
"percent_delta": -0.0575,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=7.74), rates preserved: AVG=0.200 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2432,
"after": 0.0,
"delta": -0.2432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.081,
"after": 0.0,
"delta": -0.081,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 7.7381,
"after": 8.0,
"delta": 0.2619,
"percent_delta": 0.0338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.51,
"after": 1.0,
"delta": 0.49,
"percent_delta": 0.9608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5511,
"after": 2.0,
"delta": 0.4489,
"percent_delta": 0.2894,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.115,
"after": 0.0,
"delta": -0.115,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.256,
"after": 0.0,
"delta": -0.256,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8502,
"after": 1.0,
"delta": 0.1498,
"percent_delta": 0.1762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3466,
"after": 2.0,
"delta": -0.3466,
"percent_delta": -0.1477,
"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_BB",
"before": 0.51,
"after": 1.0,
"delta": 0.49,
"percent_delta": 0.9608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.3466,
"after": 2.0,
"delta": -0.3466,
"percent_delta": -0.1477,
"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": 8.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": 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": 8.0,
"after": 8.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": 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_R",
"before": 0.9888,
"after": 1.0,
"delta": 0.0112,
"percent_delta": 0.0113,
"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_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": {}
},
{
"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": 8.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"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": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2005,
"after": 0.25,
"delta": 0.0495,
"percent_delta": 0.2469,
"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": 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_OBP",
"before": 0.2499,
"after": 0.333,
"delta": 0.0831,
"percent_delta": 0.3325,
"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.3521,
"after": 0.25,
"delta": -0.1021,
"percent_delta": -0.29,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2499,
"after": 0.333,
"delta": 0.0831,
"percent_delta": 0.3325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3521,
"after": 0.25,
"delta": -0.1021,
"percent_delta": -0.29,
"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": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.0,
"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_AB",
"before": 8.0,
"after": 4.0,
"delta": -4.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": 4.0,
"predicted_AVG": 0.2005,
"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.2499,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3521,
"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.2005,
"delta": -0.0495,
"percent_delta": -0.1982,
"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.2499,
"delta": -0.0831,
"percent_delta": -0.2496,
"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.3521,
"delta": 0.1021,
"percent_delta": 0.4083,
"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.3521,
"delta": 0.1021,
"percent_delta": 0.4083,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2499,
"delta": -0.0831,
"percent_delta": -0.2496,
"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.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.59,
"after": 4.0,
"delta": -0.59,
"percent_delta": -0.1285,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.216,
"after": 0.2005,
"delta": -0.0155,
"percent_delta": -0.0718,
"direction": "deboost",
"projection_effect": "worse",
"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.99,
"after": 0.0,
"delta": -0.99,
"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.273,
"after": 0.2499,
"delta": -0.0231,
"percent_delta": -0.0846,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.566,
"after": 0.0,
"delta": -0.566,
"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.389,
"after": 0.3521,
"delta": -0.0369,
"percent_delta": -0.0949,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.232,
"after": 0.0,
"delta": -1.232,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 0,
"deboosted_metrics": 11,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.232,
"after": 0.0,
"delta": -1.232,
"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.180 | - |
| predicted_3B | 0.009 | - |
| predicted_AB | 4.590 | - |
| predicted_AVG | 0.216 | - |
| predicted_BB | 0.355 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.273 | - |
| predicted_R | 0.566 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.389 | - |
| predicted_SO | 1.232 | - |
Final model 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.063 |
| predicted_3B | 0.081 | 0.072 |
| predicted_AB | 7.738 | 3.148 |
| predicted_AVG | 0.209 | -0.007 |
| predicted_BB | 0.515 | 0.160 |
| predicted_H | 1.584 | 0.594 |
| predicted_HBP | 0.115 | - |
| predicted_HR | 0.264 | 0.094 |
| predicted_OBP | 0.262 | -0.011 |
| predicted_R | 1.025 | 0.459 |
| predicted_RBI | 0.881 | 0.381 |
| predicted_SLG | 0.374 | -0.015 |
| predicted_SO | 2.322 | 1.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.243 | 0.000 |
| predicted_3B | 0.081 | 0.000 |
| predicted_AB | 7.738 | 0.000 |
| predicted_AVG | 0.201 | -0.008 |
| predicted_BB | 0.510 | -0.005 |
| predicted_H | 1.551 | -0.033 |
| predicted_HBP | 0.115 | 0.000 |
| predicted_HR | 0.256 | -0.008 |
| predicted_OBP | 0.250 | -0.012 |
| predicted_R | 0.989 | -0.036 |
| predicted_RBI | 0.850 | -0.031 |
| predicted_SLG | 0.352 | -0.021 |
| predicted_SO | 2.347 | 0.024 |
AB rounded to 8 (raw=7.74), rates preserved: AVG=0.200 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.243 |
| predicted_3B | 0.000 | -0.081 |
| predicted_AB | 8.000 | 0.262 |
| predicted_AVG | 0.250 | 0.049 |
| predicted_BB | 1.000 | 0.490 |
| predicted_H | 2.000 | 0.449 |
| predicted_HR | 0.000 | -0.256 |
| predicted_OBP | 0.333 | 0.083 |
| predicted_R | 1.000 | 0.011 |
| predicted_RBI | 1.000 | 0.150 |
| predicted_SLG | 0.250 | -0.102 |
| predicted_SO | 2.000 | -0.347 |
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 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -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 | 3.000 | 0.000 | 1.000 | 0.000 | 0.000 | 3.000 | 0.000 | 7.000 | 0.1429 | 0.1429 | 0.2381 | 0.1429 | 0.0000 | 0.0000 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 9 | - | 44.000 | 9.000 | 0.000 | 1.000 | 2.000 | 7.000 | 6.000 | 2.000 | 17.000 | 0.2045 | 0.2340 | 0.3864 | 0.2046 | 0.0454 | 0.1591 | 0.0454 | 0.3864 |
| season | 0.60 | 58 | - | 951.000 | 204.000 | 41.000 | 2.000 | 38.000 | 136.000 | 129.000 | 81.000 | 281.000 | 0.2145 | 0.2849 | 0.3817 | 0.2145 | 0.0400 | 0.1430 | 0.0852 | 0.2955 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3230 |
| predicted_3B | 0.1720 |
| predicted_AB | 11.7140 |
| predicted_AVG | 0.1994 |
| predicted_BB | 0.7180 |
| predicted_H | 2.3350 |
| predicted_HBP | 0.1150 |
| predicted_HR | 0.3820 |
| predicted_OBP | 0.2487 |
| predicted_R | 1.6050 |
| predicted_RBI | 1.3630 |
| predicted_SLG | 0.3541 |
| predicted_SO | 3.6990 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1800 | 0.3230 | 0.2432 | model_form_blend |
| predicted_3B | 0.0090 | 0.1720 | 0.0810 | model_form_blend |
| predicted_AB | 4.5900 | 11.7140 | 7.7381 | model_form_blend |
| predicted_AVG | 0.2160 | 0.1994 | 0.2087 | model_form_blend |
| predicted_BB | 0.3550 | 0.7180 | 0.5154 | model_form_blend |
| predicted_H | 0.9900 | 2.3350 | 1.5844 | model_form_blend |
| predicted_HBP | - | 0.1150 | 0.1150 | form_only |
| predicted_HR | 0.1700 | 0.3820 | 0.2637 | model_form_blend |
| predicted_OBP | 0.2730 | 0.2487 | 0.2623 | model_form_blend |
| predicted_R | 0.5660 | 1.6050 | 1.0251 | model_form_blend |
| predicted_RBI | 0.5000 | 1.3630 | 0.8814 | model_form_blend |
| predicted_SLG | 0.3890 | 0.3541 | 0.3736 | model_form_blend |
| predicted_SO | 1.2320 | 3.6990 | 2.3222 | 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 | 229 |
| Season rows before report date | 229 |
| Report year | 2026 |
| Profile rows used | 228 |
| 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.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 | 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 | 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 | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 680776 |
| playerID | 680776 |
| playerName | Jarren Duran |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 28.2 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.294 |
| sl_xwoba | 0.302 |
| sl_xba | 0.232 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 30.9 |
| sl_barrel_batted_rate | 11.7 |
| sl_hard_hit_percent | 40.6 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 14.4 |
| sl_whiff_percent | 34.5 |
| 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.128 | 0.000 | 0.000 | Hitting_2B | 0.126 | 1.000 | -0.126 | -1.000 |
| predicted_3B | 0.022 | 0.000 | 0.000 | Hitting_3B | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_AB | 3.740 | 4.000 | 7.000 | Hitting_AB | 3.643 | 4.000 | 0.357 | 0.000 |
| predicted_AVG | 0.271 | 0.250 | 0.286 | Hitting_AVG | 0.285 | 0.250 | -0.035 | 0.000 |
| predicted_BB | 0.454 | 0.000 | 1.000 | Hitting_BB | 0.448 | 0.000 | -0.448 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 1.010 | 1.000 | 2.000 | Hitting_H | 1.039 | 1.000 | -0.039 | 0.000 |
| predicted_HR | 0.200 | 1.000 | 0.000 | Hitting_HR | 0.222 | 0.000 | 0.778 | 1.000 |
| predicted_OBP | 0.380 | 0.250 | 0.375 | Hitting_OBP | 0.381 | 0.250 | -0.131 | 0.000 |
| predicted_R | 0.498 | 1.000 | 1.000 | Hitting_R | 0.491 | 0.000 | 0.509 | 1.000 |
| predicted_RBI | 0.650 | 1.000 | 1.000 | Hitting_RBI | 0.709 | 1.000 | 0.291 | 0.000 |
| predicted_SLG | 0.527 | 1.000 | 0.286 | Hitting_SLG | 0.514 | 0.500 | 0.486 | 0.500 |
| predicted_SO | 1.106 | 1.000 | 2.000 | Hitting_SO | 1.091 | 1.000 | -0.091 | 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 | 7 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_HR: 0.2000 -> 1.0000 (boost 0.8000, better) |
| Biggest Deboost | predicted_BB: 0.4540 -> 0.0000 (deboost -0.4540, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.7400 -> 6.6855 (boost 2.9455, 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 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2962 -> 0.3035 (boost 0.0073, better) | predicted_OBP: 0.3975 -> 0.3799 (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 | 3 | 4 | 2 | 5 | predicted_AB: 6.6855 -> 7.0000 (boost 0.3145, better) | predicted_HBP: 0.4430 -> 0.0000 (deboost -0.4430, worse) | AB rounded to 7 (raw=6.69), rates preserved: AVG=0.303 HR/AB=0.063 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8815 -> 1.0000 (boost 0.1185, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.5585 -> 0.2860 (deboost -0.2725, 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_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2860 -> 0.5585 (boost 0.2725, 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.128,
"predicted_3B": 0.022,
"predicted_AB": 3.74,
"predicted_AVG": 0.271,
"predicted_BB": 0.454,
"predicted_H": 1.01,
"predicted_HR": 0.2,
"predicted_OBP": 0.38,
"predicted_R": 0.498,
"predicted_RBI": 0.65,
"predicted_SLG": 0.527,
"predicted_SO": 1.106
},
"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.3867,
"predicted_3B": 0.0304,
"predicted_AB": 6.6855,
"predicted_AVG": 0.2962,
"predicted_BB": 0.8327,
"predicted_H": 2.0725,
"predicted_HBP": 0.443,
"predicted_HR": 0.4317,
"predicted_OBP": 0.3975,
"predicted_R": 0.9138,
"predicted_RBI": 1.362,
"predicted_SLG": 0.5651,
"predicted_SO": 1.9014
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.128,
"after": 0.3867,
"delta": 0.2587,
"percent_delta": 2.0211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.0304,
"delta": 0.0084,
"percent_delta": 0.3818,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.74,
"after": 6.6855,
"delta": 2.9455,
"percent_delta": 0.7876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2962,
"delta": 0.0252,
"percent_delta": 0.093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.454,
"after": 0.8327,
"delta": 0.3787,
"percent_delta": 0.8341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 2.0725,
"delta": 1.0625,
"percent_delta": 1.052,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.4317,
"delta": 0.2317,
"percent_delta": 1.1585,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.38,
"after": 0.3975,
"delta": 0.0175,
"percent_delta": 0.0461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.498,
"after": 0.9138,
"delta": 0.4158,
"percent_delta": 0.8349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 1.362,
"delta": 0.712,
"percent_delta": 1.0954,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.527,
"after": 0.5651,
"delta": 0.0381,
"percent_delta": 0.0723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.106,
"after": 1.9014,
"delta": 0.7954,
"percent_delta": 0.7192,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.74,
"after": 6.6855,
"delta": 2.9455,
"percent_delta": 0.7876,
"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": 8,
"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.3867,
"predicted_3B": 0.0304,
"predicted_AB": 6.6855,
"predicted_AVG": 0.3035,
"predicted_BB": 0.824,
"predicted_H": 2.029,
"predicted_HBP": 0.443,
"predicted_HR": 0.4191,
"predicted_OBP": 0.3799,
"predicted_R": 0.8815,
"predicted_RBI": 1.3138,
"predicted_SLG": 0.5585,
"predicted_SO": 1.9214
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3867,
"after": 0.3867,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0304,
"after": 0.0304,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6855,
"after": 6.6855,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2962,
"after": 0.3035,
"delta": 0.0073,
"percent_delta": 0.0246,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8327,
"after": 0.824,
"delta": -0.0087,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0725,
"after": 2.029,
"delta": -0.0435,
"percent_delta": -0.021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.443,
"after": 0.443,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4317,
"after": 0.4191,
"delta": -0.0126,
"percent_delta": -0.0292,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3975,
"after": 0.3799,
"delta": -0.0176,
"percent_delta": -0.0443,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9138,
"after": 0.8815,
"delta": -0.0323,
"percent_delta": -0.0353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.362,
"after": 1.3138,
"delta": -0.0482,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5651,
"after": 0.5585,
"delta": -0.0066,
"percent_delta": -0.0117,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9014,
"after": 1.9214,
"delta": 0.02,
"percent_delta": 0.0105,
"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.2962,
"after": 0.3035,
"delta": 0.0073,
"percent_delta": 0.0246,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3975,
"after": 0.3799,
"delta": -0.0176,
"percent_delta": -0.0443,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.69), rates preserved: AVG=0.303 HR/AB=0.063",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3867,
"after": 0.0,
"delta": -0.3867,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0304,
"after": 0.0,
"delta": -0.0304,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6855,
"after": 7.0,
"delta": 0.3145,
"percent_delta": 0.047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.824,
"after": 1.0,
"delta": 0.176,
"percent_delta": 0.2136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.029,
"after": 2.0,
"delta": -0.029,
"percent_delta": -0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.443,
"after": 0.0,
"delta": -0.443,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4191,
"after": 0.0,
"delta": -0.4191,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.3138,
"after": 1.0,
"delta": -0.3138,
"percent_delta": -0.2388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9214,
"after": 2.0,
"delta": 0.0786,
"percent_delta": 0.0409,
"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": 6.6855,
"after": 7.0,
"delta": 0.3145,
"percent_delta": 0.047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.443,
"after": 0.0,
"delta": -0.443,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.8815,
"after": 1.0,
"delta": 0.1185,
"percent_delta": 0.1344,
"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": 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_R",
"before": 0.8815,
"after": 1.0,
"delta": 0.1185,
"percent_delta": 0.1344,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3035,
"after": 0.286,
"delta": -0.0175,
"percent_delta": -0.0577,
"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": 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_OBP",
"before": 0.3799,
"after": 0.375,
"delta": -0.0049,
"percent_delta": -0.0129,
"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.5585,
"after": 0.286,
"delta": -0.2725,
"percent_delta": -0.4879,
"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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5585,
"after": 0.286,
"delta": -0.2725,
"percent_delta": -0.4879,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 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_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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.3035,
"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.3799,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5585,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.286,
"after": 0.3035,
"delta": 0.0175,
"percent_delta": 0.0612,
"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.375,
"after": 0.3799,
"delta": 0.0049,
"percent_delta": 0.0131,
"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.286,
"after": 0.5585,
"delta": 0.2725,
"percent_delta": 0.9527,
"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.286,
"after": 0.5585,
"delta": 0.2725,
"percent_delta": 0.9527,
"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.128,
"after": 0.0,
"delta": -0.128,
"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.74,
"after": 4.0,
"delta": 0.26,
"percent_delta": 0.0695,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.3035,
"delta": 0.0325,
"percent_delta": 0.1199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.454,
"after": 0.0,
"delta": -0.454,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.38,
"after": 0.3799,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.498,
"after": 1.0,
"delta": 0.502,
"percent_delta": 1.008,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 1.0,
"delta": 0.35,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.527,
"after": 0.5585,
"delta": 0.0315,
"percent_delta": 0.0598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.106,
"after": 1.0,
"delta": -0.106,
"percent_delta": -0.0958,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 6,
"deboosted_metrics": 3,
"better_metrics": 7,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.2,
"after": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.454,
"after": 0.0,
"delta": -0.454,
"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.128 | - |
| predicted_3B | 0.022 | - |
| predicted_AB | 3.740 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.454 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.380 | - |
| predicted_R | 0.498 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.527 | - |
| predicted_SO | 1.106 | - |
Final model 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.387 | 0.259 |
| predicted_3B | 0.030 | 0.008 |
| predicted_AB | 6.686 | 2.946 |
| predicted_AVG | 0.296 | 0.025 |
| predicted_BB | 0.833 | 0.379 |
| predicted_H | 2.072 | 1.062 |
| predicted_HBP | 0.443 | - |
| predicted_HR | 0.432 | 0.232 |
| predicted_OBP | 0.398 | 0.018 |
| predicted_R | 0.914 | 0.416 |
| predicted_RBI | 1.362 | 0.712 |
| predicted_SLG | 0.565 | 0.038 |
| predicted_SO | 1.901 | 0.795 |
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.387 | 0.000 |
| predicted_3B | 0.030 | 0.000 |
| predicted_AB | 6.686 | 0.000 |
| predicted_AVG | 0.303 | 0.007 |
| predicted_BB | 0.824 | -0.009 |
| predicted_H | 2.029 | -0.043 |
| predicted_HBP | 0.443 | 0.000 |
| predicted_HR | 0.419 | -0.013 |
| predicted_OBP | 0.380 | -0.018 |
| predicted_R | 0.881 | -0.032 |
| predicted_RBI | 1.314 | -0.048 |
| predicted_SLG | 0.558 | -0.007 |
| predicted_SO | 1.921 | 0.020 |
AB rounded to 7 (raw=6.69), rates preserved: AVG=0.303 HR/AB=0.063
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.387 |
| predicted_3B | 0.000 | -0.030 |
| predicted_AB | 7.000 | 0.314 |
| predicted_AVG | 0.286 | -0.018 |
| predicted_BB | 1.000 | 0.176 |
| predicted_H | 2.000 | -0.029 |
| predicted_HR | 0.000 | -0.419 |
| predicted_OBP | 0.375 | -0.005 |
| predicted_R | 1.000 | 0.119 |
| predicted_RBI | 1.000 | -0.314 |
| predicted_SLG | 0.286 | -0.273 |
| predicted_SO | 2.000 | 0.079 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | 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 | 8.000 | 3.000 | 0.000 | 2.000 | 6.000 | 3.000 | 2.000 | 5.000 | 0.4211 | 0.4762 | 0.8947 | 0.4210 | 0.1053 | 0.3158 | 0.1053 | 0.2632 |
| last_10 | 0.20 | 8 | - | 32.000 | 13.000 | 3.000 | 0.000 | 2.000 | 6.000 | 4.000 | 6.000 | 7.000 | 0.4062 | 0.5476 | 0.6875 | 0.4062 | 0.0625 | 0.1875 | 0.1875 | 0.2188 |
| season | 0.60 | 59 | - | 838.000 | 239.000 | 29.000 | 5.000 | 51.000 | 163.000 | 113.000 | 103.000 | 251.000 | 0.2852 | 0.3800 | 0.5143 | 0.2852 | 0.0609 | 0.1945 | 0.1229 | 0.2995 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7140 |
| predicted_3B | 0.0410 |
| predicted_AB | 10.4130 |
| predicted_AVG | 0.3282 |
| predicted_BB | 1.3120 |
| predicted_H | 3.4170 |
| predicted_HBP | 0.4430 |
| predicted_HR | 0.7250 |
| predicted_OBP | 0.4196 |
| predicted_R | 1.4400 |
| predicted_RBI | 2.2630 |
| predicted_SLG | 0.6134 |
| predicted_SO | 2.9080 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1280 | 0.7140 | 0.3867 | model_form_blend |
| predicted_3B | 0.0220 | 0.0410 | 0.0304 | model_form_blend |
| predicted_AB | 3.7400 | 10.4130 | 6.6855 | model_form_blend |
| predicted_AVG | 0.2710 | 0.3282 | 0.2962 | model_form_blend |
| predicted_BB | 0.4540 | 1.3120 | 0.8327 | model_form_blend |
| predicted_H | 1.0100 | 3.4170 | 2.0725 | model_form_blend |
| predicted_HBP | - | 0.4430 | 0.4430 | form_only |
| predicted_HR | 0.2000 | 0.7250 | 0.4317 | model_form_blend |
| predicted_OBP | 0.3800 | 0.4196 | 0.3975 | model_form_blend |
| predicted_R | 0.4980 | 1.4400 | 0.9138 | model_form_blend |
| predicted_RBI | 0.6500 | 2.2630 | 1.3620 | model_form_blend |
| predicted_SLG | 0.5270 | 0.6134 | 0.5651 | model_form_blend |
| predicted_SO | 1.1060 | 2.9080 | 1.9014 | 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 | 227 |
| 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 | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.285 |
| 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 | 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 | 1B |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 575929 |
| playerID | 575929 |
| playerName | Willson Contreras |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.9 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.403 |
| sl_xwoba | 0.399 |
| sl_xba | 0.278 |
| sl_xslg | 0.537 |
| sl_sweet_spot_percent | 34.2 |
| sl_barrel_batted_rate | 15.7 |
| sl_hard_hit_percent | 44.5 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 30.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.197 | 0.000 | 0.000 | Hitting_2B | 0.197 | 0.000 | -0.197 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 4.250 | 3.000 | 7.000 | Hitting_AB | 3.925 | 4.000 | -0.925 | -1.000 |
| predicted_AVG | 0.238 | 0.000 | 0.286 | Hitting_AVG | 0.280 | 0.000 | -0.280 | 0.000 |
| predicted_BB | 0.408 | 1.000 | 1.000 | Hitting_BB | 0.406 | 0.000 | 0.594 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.013 | 0.000 | -0.013 | 0.000 |
| predicted_H | 1.010 | 0.000 | 2.000 | Hitting_H | 1.100 | 0.000 | -1.100 | 0.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.113 | 0.000 | -0.113 | 0.000 |
| predicted_OBP | 0.309 | 0.250 | 0.375 | Hitting_OBP | 0.346 | 0.000 | -0.096 | 0.250 |
| predicted_R | 0.462 | 0.000 | 1.000 | Hitting_R | 0.460 | 0.000 | -0.460 | 0.000 |
| predicted_RBI | 0.620 | 0.000 | 1.000 | Hitting_RBI | 0.439 | 0.000 | -0.439 | 0.000 |
| predicted_SLG | 0.406 | 0.000 | 0.286 | Hitting_SLG | 0.425 | 0.000 | -0.425 | 0.000 |
| predicted_SO | 0.807 | 0.000 | 1.000 | Hitting_SO | 0.803 | 1.000 | -0.803 | -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.4080 -> 1.0000 (boost 0.5920, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 4.2500 -> 7.1151 (boost 2.8651, 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.4078 -> 0.3976 (deboost -0.0102, 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_BB: 0.6420 -> 1.0000 (boost 0.3580, better) | predicted_SO: 1.4530 -> 1.0000 (deboost -0.4530, better) | AB rounded to 7 (raw=7.12), rates preserved: AVG=0.247 HR/AB=0.033 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7687 -> 1.0000 (boost 0.2313, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3092 -> 0.3750 (boost 0.0658, better) | predicted_SLG: 0.3976 -> 0.2860 (deboost -0.1116, 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: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3976 (boost 0.1116, better) | predicted_OBP: 0.3750 -> 0.3092 (deboost -0.0658, worse) | 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.197,
"predicted_3B": 0.017,
"predicted_AB": 4.25,
"predicted_AVG": 0.238,
"predicted_BB": 0.408,
"predicted_H": 1.01,
"predicted_HR": 0.15,
"predicted_OBP": 0.309,
"predicted_R": 0.462,
"predicted_RBI": 0.62,
"predicted_SLG": 0.406,
"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.3229,
"predicted_3B": 0.0223,
"predicted_AB": 7.1151,
"predicted_AVG": 0.2475,
"predicted_BB": 0.6488,
"predicted_H": 1.7938,
"predicted_HBP": 0.003,
"predicted_HR": 0.2423,
"predicted_OBP": 0.3115,
"predicted_R": 0.7969,
"predicted_RBI": 1.0839,
"predicted_SLG": 0.4078,
"predicted_SO": 1.4379
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.3229,
"delta": 0.1259,
"percent_delta": 0.6391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0223,
"delta": 0.0053,
"percent_delta": 0.3118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.25,
"after": 7.1151,
"delta": 2.8651,
"percent_delta": 0.6741,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2475,
"delta": 0.0095,
"percent_delta": 0.0399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 0.6488,
"delta": 0.2408,
"percent_delta": 0.5902,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.7938,
"delta": 0.7838,
"percent_delta": 0.776,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2423,
"delta": 0.0923,
"percent_delta": 0.6153,
"direction": "boost",
"projection_effect": "better",
"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.462,
"after": 0.7969,
"delta": 0.3349,
"percent_delta": 0.7249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.62,
"after": 1.0839,
"delta": 0.4639,
"percent_delta": 0.7482,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.406,
"after": 0.4078,
"delta": 0.0018,
"percent_delta": 0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.807,
"after": 1.4379,
"delta": 0.6309,
"percent_delta": 0.7818,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.25,
"after": 7.1151,
"delta": 2.8651,
"percent_delta": 0.6741,
"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": 9,
"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.3229,
"predicted_3B": 0.0223,
"predicted_AB": 7.1151,
"predicted_AVG": 0.2468,
"predicted_BB": 0.642,
"predicted_H": 1.7561,
"predicted_HBP": 0.003,
"predicted_HR": 0.2352,
"predicted_OBP": 0.3092,
"predicted_R": 0.7687,
"predicted_RBI": 1.0455,
"predicted_SLG": 0.3976,
"predicted_SO": 1.453
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3229,
"after": 0.3229,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0223,
"after": 0.0223,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1151,
"after": 7.1151,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2475,
"after": 0.2468,
"delta": -0.0007,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6488,
"after": 0.642,
"delta": -0.0068,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7938,
"after": 1.7561,
"delta": -0.0377,
"percent_delta": -0.021,
"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.2423,
"after": 0.2352,
"delta": -0.0071,
"percent_delta": -0.0293,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3115,
"after": 0.3092,
"delta": -0.0023,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7969,
"after": 0.7687,
"delta": -0.0282,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0839,
"after": 1.0455,
"delta": -0.0384,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4078,
"after": 0.3976,
"delta": -0.0102,
"percent_delta": -0.025,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4379,
"after": 1.453,
"delta": 0.0151,
"percent_delta": 0.0105,
"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.4078,
"after": 0.3976,
"delta": -0.0102,
"percent_delta": -0.025,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.12), rates preserved: AVG=0.247 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3229,
"after": 0.0,
"delta": -0.3229,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0223,
"after": 0.0,
"delta": -0.0223,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1151,
"after": 7.0,
"delta": -0.1151,
"percent_delta": -0.0162,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.642,
"after": 1.0,
"delta": 0.358,
"percent_delta": 0.5576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7561,
"after": 2.0,
"delta": 0.2439,
"percent_delta": 0.1389,
"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.2352,
"after": 0.0,
"delta": -0.2352,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0455,
"after": 1.0,
"delta": -0.0455,
"percent_delta": -0.0435,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.453,
"after": 1.0,
"delta": -0.453,
"percent_delta": -0.3118,
"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_BB",
"before": 0.642,
"after": 1.0,
"delta": 0.358,
"percent_delta": 0.5576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.453,
"after": 1.0,
"delta": -0.453,
"percent_delta": -0.3118,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 0.7687,
"after": 1.0,
"delta": 0.2313,
"percent_delta": 0.3009,
"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.7687,
"after": 1.0,
"delta": 0.2313,
"percent_delta": 0.3009,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2468,
"after": 0.286,
"delta": 0.0392,
"percent_delta": 0.1588,
"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": 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_OBP",
"before": 0.3092,
"after": 0.375,
"delta": 0.0658,
"percent_delta": 0.2128,
"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.3976,
"after": 0.286,
"delta": -0.1116,
"percent_delta": -0.2807,
"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.3092,
"after": 0.375,
"delta": 0.0658,
"percent_delta": 0.2128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3976,
"after": 0.286,
"delta": -0.1116,
"percent_delta": -0.2807,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 0.0,
"delta": -2.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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3092,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3976,
"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.286,
"after": 0.2468,
"delta": -0.0392,
"percent_delta": -0.137,
"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.375,
"after": 0.3092,
"delta": -0.0658,
"percent_delta": -0.1756,
"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.286,
"after": 0.3976,
"delta": 0.1116,
"percent_delta": 0.3904,
"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.286,
"after": 0.3976,
"delta": 0.1116,
"percent_delta": 0.3904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3092,
"delta": -0.0658,
"percent_delta": -0.1756,
"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.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"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.238,
"after": 0.2468,
"delta": 0.0088,
"percent_delta": 0.037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 1.0,
"delta": 0.592,
"percent_delta": 1.451,
"direction": "boost",
"projection_effect": "better",
"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.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.3092,
"delta": 0.0002,
"percent_delta": 0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 0.0,
"delta": -0.462,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.62,
"after": 0.0,
"delta": -0.62,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.406,
"after": 0.3976,
"delta": -0.0084,
"percent_delta": -0.0207,
"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": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.408,
"after": 1.0,
"delta": 0.592,
"percent_delta": 1.451,
"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.197 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 4.250 | - |
| predicted_AVG | 0.238 | - |
| predicted_BB | 0.408 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.462 | - |
| predicted_RBI | 0.620 | - |
| predicted_SLG | 0.406 | - |
| 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.323 | 0.126 |
| predicted_3B | 0.022 | 0.005 |
| predicted_AB | 7.115 | 2.865 |
| predicted_AVG | 0.247 | 0.010 |
| predicted_BB | 0.649 | 0.241 |
| predicted_H | 1.794 | 0.784 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.242 | 0.092 |
| predicted_OBP | 0.311 | 0.003 |
| predicted_R | 0.797 | 0.335 |
| predicted_RBI | 1.084 | 0.464 |
| predicted_SLG | 0.408 | 0.002 |
| predicted_SO | 1.438 | 0.631 |
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.323 | 0.000 |
| predicted_3B | 0.022 | 0.000 |
| predicted_AB | 7.115 | 0.000 |
| predicted_AVG | 0.247 | -0.001 |
| predicted_BB | 0.642 | -0.007 |
| predicted_H | 1.756 | -0.038 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.235 | -0.007 |
| predicted_OBP | 0.309 | -0.002 |
| predicted_R | 0.769 | -0.028 |
| predicted_RBI | 1.046 | -0.038 |
| predicted_SLG | 0.398 | -0.010 |
| predicted_SO | 1.453 | 0.015 |
AB rounded to 7 (raw=7.12), rates preserved: AVG=0.247 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.323 |
| predicted_3B | 0.000 | -0.022 |
| predicted_AB | 7.000 | -0.115 |
| predicted_AVG | 0.286 | 0.039 |
| predicted_BB | 1.000 | 0.358 |
| predicted_H | 2.000 | 0.244 |
| predicted_HR | 0.000 | -0.235 |
| predicted_OBP | 0.375 | 0.066 |
| predicted_R | 1.000 | 0.231 |
| predicted_RBI | 1.000 | -0.046 |
| predicted_SLG | 0.286 | -0.112 |
| predicted_SO | 1.000 | -0.453 |
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 | -4.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 4.000 | 0.000 | 0.000 | 1.000 | 5.000 | 2.000 | 1.000 | 4.000 | 0.2105 | 0.2381 | 0.3684 | 0.2105 | 0.0526 | 0.2632 | 0.0526 | 0.2105 |
| last_10 | 0.20 | 9 | - | 37.000 | 9.000 | 3.000 | 0.000 | 1.000 | 7.000 | 4.000 | 3.000 | 8.000 | 0.2432 | 0.2927 | 0.4054 | 0.2432 | 0.0270 | 0.1892 | 0.0811 | 0.2162 |
| season | 0.60 | 62 | - | 938.000 | 263.000 | 47.000 | 4.000 | 27.000 | 105.000 | 110.000 | 97.000 | 192.000 | 0.2804 | 0.3462 | 0.4254 | 0.2804 | 0.0288 | 0.1119 | 0.1034 | 0.2047 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4820 |
| predicted_3B | 0.0290 |
| predicted_AB | 10.7350 |
| predicted_AVG | 0.2594 |
| predicted_BB | 0.9530 |
| predicted_H | 2.7840 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3590 |
| predicted_OBP | 0.3147 |
| predicted_R | 1.2200 |
| predicted_RBI | 1.6700 |
| predicted_SLG | 0.4101 |
| predicted_SO | 2.2350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1970 | 0.4820 | 0.3229 | model_form_blend |
| predicted_3B | 0.0170 | 0.0290 | 0.0223 | model_form_blend |
| predicted_AB | 4.2500 | 10.7350 | 7.1151 | model_form_blend |
| predicted_AVG | 0.2380 | 0.2594 | 0.2475 | model_form_blend |
| predicted_BB | 0.4080 | 0.9530 | 0.6488 | model_form_blend |
| predicted_H | 1.0100 | 2.7840 | 1.7938 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1500 | 0.3590 | 0.2423 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3147 | 0.3115 | model_form_blend |
| predicted_R | 0.4620 | 1.2200 | 0.7969 | model_form_blend |
| predicted_RBI | 0.6200 | 1.6700 | 1.0839 | model_form_blend |
| predicted_SLG | 0.4060 | 0.4101 | 0.4078 | model_form_blend |
| predicted_SO | 0.8070 | 2.2350 | 1.4379 | 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 | 239 |
| Season rows before report date | 239 |
| Report year | 2026 |
| Profile rows used | 238 |
| 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.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.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 | RF |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 677800 |
| playerID | 677800 |
| playerName | Wilyer Abreu |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 19.0 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.337 |
| sl_xwoba | 0.348 |
| sl_xba | 0.271 |
| sl_xslg | 0.472 |
| sl_sweet_spot_percent | 33.7 |
| sl_barrel_batted_rate | 11.5 |
| sl_hard_hit_percent | 43.0 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 17.4 |
| sl_whiff_percent | 22.0 |
| sl_swing_percent | 48.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.170 | 0.000 | 0.000 | Hitting_2B | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 3.585 | 4.000 | 5.000 | Hitting_AB | 3.519 | 4.000 | 0.481 | 0.000 |
| predicted_AVG | 0.259 | 0.000 | 0.200 | Hitting_AVG | 0.332 | 0.250 | -0.332 | -0.250 |
| predicted_BB | 0.189 | 0.000 | 0.000 | Hitting_BB | 0.185 | 0.000 | -0.185 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.093 | 0.000 | -0.093 | 0.000 |
| predicted_H | 0.810 | 0.000 | 1.000 | Hitting_H | 1.167 | 1.000 | -1.167 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.321 | 0.000 | 0.200 | Hitting_OBP | 0.376 | 0.250 | -0.376 | -0.250 |
| predicted_R | 0.604 | 0.000 | 1.000 | Hitting_R | 0.593 | 0.000 | -0.593 | 0.000 |
| predicted_RBI | 0.360 | 0.000 | 0.000 | Hitting_RBI | 0.222 | 0.000 | -0.222 | 0.000 |
| predicted_SLG | 0.378 | 0.000 | 0.200 | Hitting_SLG | 0.389 | 0.250 | -0.389 | -0.250 |
| predicted_SO | 0.755 | 1.000 | 1.000 | Hitting_SO | 0.741 | 1.000 | 0.259 | 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_AB: 3.5850 -> 4.0000 (boost 0.4150, better) |
| Biggest Deboost | predicted_H: 0.8100 -> 0.0000 (deboost -0.8100, 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 | 7 | 1 | predicted_AB: 3.5850 -> 5.0045 (boost 1.4195, 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.3320 -> 0.3049 (deboost -0.0271, 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_RBI: 0.4623 -> 0.0000 (deboost -0.4623, worse) | AB rounded to 5 (raw=5.00), rates preserved: AVG=0.260 HR/AB=0.009 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7964 -> 1.0000 (boost 0.2036, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3519 -> 0.2000 (deboost -0.1519, 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_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.3519 (boost 0.1519, better) | - | 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.17,
"predicted_3B": 0.019,
"predicted_AB": 3.585,
"predicted_AVG": 0.259,
"predicted_BB": 0.189,
"predicted_H": 0.81,
"predicted_HR": 0.06,
"predicted_OBP": 0.321,
"predicted_R": 0.604,
"predicted_RBI": 0.36,
"predicted_SLG": 0.378,
"predicted_SO": 0.755
},
"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.2063,
"predicted_3B": 0.0586,
"predicted_AB": 5.0045,
"predicted_AVG": 0.2733,
"predicted_BB": 0.3301,
"predicted_H": 1.3266,
"predicted_HBP": 0.096,
"predicted_HR": 0.0476,
"predicted_OBP": 0.332,
"predicted_R": 0.8256,
"predicted_RBI": 0.4793,
"predicted_SLG": 0.3771,
"predicted_SO": 1.1825
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.17,
"after": 0.2063,
"delta": 0.0363,
"percent_delta": 0.2135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0586,
"delta": 0.0396,
"percent_delta": 2.0842,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.585,
"after": 5.0045,
"delta": 1.4195,
"percent_delta": 0.396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2733,
"delta": 0.0143,
"percent_delta": 0.0552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.189,
"after": 0.3301,
"delta": 0.1411,
"percent_delta": 0.7466,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.3266,
"delta": 0.5166,
"percent_delta": 0.6378,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0476,
"delta": -0.0124,
"percent_delta": -0.2067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.332,
"delta": 0.011,
"percent_delta": 0.0343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.604,
"after": 0.8256,
"delta": 0.2216,
"percent_delta": 0.3669,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 0.4793,
"delta": 0.1193,
"percent_delta": 0.3314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.378,
"after": 0.3771,
"delta": -0.0009,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.755,
"after": 1.1825,
"delta": 0.4275,
"percent_delta": 0.5662,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.585,
"after": 5.0045,
"delta": 1.4195,
"percent_delta": 0.396,
"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": 7,
"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.2063,
"predicted_3B": 0.0586,
"predicted_AB": 5.0045,
"predicted_AVG": 0.2595,
"predicted_BB": 0.3266,
"predicted_H": 1.2987,
"predicted_HBP": 0.096,
"predicted_HR": 0.0462,
"predicted_OBP": 0.3049,
"predicted_R": 0.7964,
"predicted_RBI": 0.4623,
"predicted_SLG": 0.3519,
"predicted_SO": 1.1949
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2063,
"after": 0.2063,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0586,
"after": 0.0586,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0045,
"after": 5.0045,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2733,
"after": 0.2595,
"delta": -0.0138,
"percent_delta": -0.0505,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3301,
"after": 0.3266,
"delta": -0.0035,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3266,
"after": 1.2987,
"delta": -0.0279,
"percent_delta": -0.021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.096,
"after": 0.096,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0476,
"after": 0.0462,
"delta": -0.0014,
"percent_delta": -0.0294,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3049,
"delta": -0.0271,
"percent_delta": -0.0816,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8256,
"after": 0.7964,
"delta": -0.0292,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4793,
"after": 0.4623,
"delta": -0.017,
"percent_delta": -0.0355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3771,
"after": 0.3519,
"delta": -0.0252,
"percent_delta": -0.0668,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1825,
"after": 1.1949,
"delta": 0.0124,
"percent_delta": 0.0105,
"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.332,
"after": 0.3049,
"delta": -0.0271,
"percent_delta": -0.0816,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.00), rates preserved: AVG=0.260 HR/AB=0.009",
"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.2063,
"after": 0.0,
"delta": -0.2063,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0586,
"after": 0.0,
"delta": -0.0586,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.0045,
"after": 5.0,
"delta": -0.0045,
"percent_delta": -0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3266,
"after": 0.0,
"delta": -0.3266,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2987,
"after": 1.0,
"delta": -0.2987,
"percent_delta": -0.23,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.096,
"after": 0.0,
"delta": -0.096,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0462,
"after": 0.0,
"delta": -0.0462,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4623,
"after": 0.0,
"delta": -0.4623,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1949,
"after": 1.0,
"delta": -0.1949,
"percent_delta": -0.1631,
"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_RBI",
"before": 0.4623,
"after": 0.0,
"delta": -0.4623,
"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": 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.7964,
"after": 1.0,
"delta": 0.2036,
"percent_delta": 0.2557,
"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.7964,
"after": 1.0,
"delta": 0.2036,
"percent_delta": 0.2557,
"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": 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.2595,
"after": 0.2,
"delta": -0.0595,
"percent_delta": -0.2293,
"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.3049,
"after": 0.2,
"delta": -0.1049,
"percent_delta": -0.344,
"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.3519,
"after": 0.2,
"delta": -0.1519,
"percent_delta": -0.4317,
"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.3519,
"after": 0.2,
"delta": -0.1519,
"percent_delta": -0.4317,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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_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.2595,
"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.3049,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3519,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2595,
"delta": 0.0595,
"percent_delta": 0.2976,
"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.3049,
"delta": 0.1049,
"percent_delta": 0.5244,
"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.3519,
"delta": 0.1519,
"percent_delta": 0.7593,
"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.3519,
"delta": 0.1519,
"percent_delta": 0.7593,
"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.17,
"after": 0.0,
"delta": -0.17,
"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": 3.585,
"after": 4.0,
"delta": 0.415,
"percent_delta": 0.1158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2595,
"delta": 0.0005,
"percent_delta": 0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.189,
"after": 0.0,
"delta": -0.189,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"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.321,
"after": 0.3049,
"delta": -0.0161,
"percent_delta": -0.0502,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.604,
"after": 0.0,
"delta": -0.604,
"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.378,
"after": 0.3519,
"delta": -0.0261,
"percent_delta": -0.069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.755,
"after": 1.0,
"delta": 0.245,
"percent_delta": 0.3245,
"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": 3.585,
"after": 4.0,
"delta": 0.415,
"percent_delta": 0.1158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"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.170 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 3.585 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.189 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.321 | - |
| predicted_R | 0.604 | - |
| predicted_RBI | 0.360 | - |
| predicted_SLG | 0.378 | - |
| predicted_SO | 0.755 | - |
Final model 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.206 | 0.036 |
| predicted_3B | 0.059 | 0.040 |
| predicted_AB | 5.005 | 1.420 |
| predicted_AVG | 0.273 | 0.014 |
| predicted_BB | 0.330 | 0.141 |
| predicted_H | 1.327 | 0.517 |
| predicted_HBP | 0.096 | - |
| predicted_HR | 0.048 | -0.012 |
| predicted_OBP | 0.332 | 0.011 |
| predicted_R | 0.826 | 0.222 |
| predicted_RBI | 0.479 | 0.119 |
| predicted_SLG | 0.377 | -0.001 |
| predicted_SO | 1.183 | 0.428 |
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.206 | 0.000 |
| predicted_3B | 0.059 | 0.000 |
| predicted_AB | 5.005 | 0.000 |
| predicted_AVG | 0.260 | -0.014 |
| predicted_BB | 0.327 | -0.004 |
| predicted_H | 1.299 | -0.028 |
| predicted_HBP | 0.096 | 0.000 |
| predicted_HR | 0.046 | -0.001 |
| predicted_OBP | 0.305 | -0.027 |
| predicted_R | 0.796 | -0.029 |
| predicted_RBI | 0.462 | -0.017 |
| predicted_SLG | 0.352 | -0.025 |
| predicted_SO | 1.195 | 0.012 |
AB rounded to 5 (raw=5.00), rates preserved: AVG=0.260 HR/AB=0.009
| 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 | - |
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.206 |
| predicted_3B | 0.000 | -0.059 |
| predicted_AB | 5.000 | -0.005 |
| predicted_AVG | 0.200 | -0.059 |
| predicted_BB | 0.000 | -0.327 |
| predicted_H | 1.000 | -0.299 |
| predicted_HR | 0.000 | -0.046 |
| predicted_OBP | 0.200 | -0.105 |
| predicted_R | 1.000 | 0.204 |
| predicted_RBI | 0.000 | -0.462 |
| predicted_SLG | 0.200 | -0.152 |
| predicted_SO | 1.000 | -0.195 |
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 | 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 | 1.000 | 0.000 | 3.000 | 2.000 | 2.000 | 8.000 | 0.2105 | 0.2727 | 0.3158 | 0.2105 | 0.0000 | 0.1579 | 0.1053 | 0.4210 |
| last_10 | 0.20 | 7 | - | 35.000 | 10.000 | 1.000 | 1.000 | 0.000 | 3.000 | 11.000 | 6.000 | 8.000 | 0.2857 | 0.3810 | 0.3714 | 0.2857 | 0.0000 | 0.0857 | 0.1714 | 0.2286 |
| season | 0.60 | 21 | - | 190.000 | 63.000 | 9.000 | 1.000 | 0.000 | 12.000 | 32.000 | 10.000 | 40.000 | 0.3316 | 0.3756 | 0.3895 | 0.3316 | 0.0000 | 0.0632 | 0.0526 | 0.2105 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2580 |
| predicted_3B | 0.1150 |
| predicted_AB | 7.0250 |
| predicted_AVG | 0.2936 |
| predicted_BB | 0.5310 |
| predicted_H | 2.0620 |
| predicted_HBP | 0.0960 |
| predicted_HR | 0.0300 |
| predicted_OBP | 0.3477 |
| predicted_R | 1.1410 |
| predicted_RBI | 0.6490 |
| predicted_SLG | 0.3759 |
| predicted_SO | 1.7910 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1700 | 0.2580 | 0.2063 | model_form_blend |
| predicted_3B | 0.0190 | 0.1150 | 0.0586 | model_form_blend |
| predicted_AB | 3.5850 | 7.0250 | 5.0045 | model_form_blend |
| predicted_AVG | 0.2590 | 0.2936 | 0.2733 | model_form_blend |
| predicted_BB | 0.1890 | 0.5310 | 0.3301 | model_form_blend |
| predicted_H | 0.8100 | 2.0620 | 1.3266 | model_form_blend |
| predicted_HBP | - | 0.0960 | 0.0960 | form_only |
| predicted_HR | 0.0600 | 0.0300 | 0.0476 | model_form_blend |
| predicted_OBP | 0.3210 | 0.3477 | 0.3320 | model_form_blend |
| predicted_R | 0.6040 | 1.1410 | 0.8256 | model_form_blend |
| predicted_RBI | 0.3600 | 0.6490 | 0.4793 | model_form_blend |
| predicted_SLG | 0.3780 | 0.3759 | 0.3771 | model_form_blend |
| predicted_SO | 0.7550 | 1.7910 | 1.1825 | 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 | 54 |
| Season rows before report date | 54 |
| Report year | 2026 |
| Profile rows used | 53 |
| 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.332 |
| 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 | C |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 681508 |
| playerID | 681508 |
| playerName | Mickey Gasper |
| pos | C |
| started | True |
| startingPosition | C |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.7 |
| sl_bb_percent | 5.5 |
| sl_woba | 0.324 |
| sl_xwoba | 0.292 |
| sl_xba | 0.243 |
| sl_xslg | 0.358 |
| sl_sweet_spot_percent | 34.0 |
| sl_barrel_batted_rate | 6.0 |
| sl_hard_hit_percent | 48.0 |
| sl_exit_velocity_avg | 92.6 |
| sl_launch_angle_avg | 16.9 |
| sl_whiff_percent | 22.0 |
| 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.233 | 1.000 | 0.000 | Hitting_2B | 0.229 | 0.000 | 0.771 | 1.000 |
| predicted_3B | 0.006 | 0.000 | 0.000 | Hitting_3B | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_AB | 3.449 | 4.000 | 6.000 | Hitting_AB | 3.391 | 3.000 | 0.609 | 1.000 |
| predicted_AVG | 0.242 | 0.500 | 0.167 | Hitting_AVG | 0.191 | 0.000 | 0.309 | 0.500 |
| predicted_BB | 0.261 | 0.000 | 0.000 | Hitting_BB | 0.257 | 0.000 | -0.257 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 0.770 | 2.000 | 1.000 | Hitting_H | 0.648 | 0.000 | 1.352 | 2.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_OBP | 0.283 | 0.500 | 0.167 | Hitting_OBP | 0.266 | 0.000 | 0.234 | 0.500 |
| predicted_R | 0.403 | 1.000 | 1.000 | Hitting_R | 0.397 | 0.000 | 0.603 | 1.000 |
| predicted_RBI | 0.400 | 1.000 | 1.000 | Hitting_RBI | 0.419 | 0.000 | 0.581 | 1.000 |
| predicted_SLG | 0.357 | 0.750 | 0.167 | Hitting_SLG | 0.287 | 0.000 | 0.463 | 0.750 |
| predicted_SO | 0.551 | 0.000 | 1.000 | Hitting_SO | 0.542 | 1.000 | -0.542 | -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_H: 0.7700 -> 2.0000 (boost 1.2300, better) |
| Biggest Deboost | predicted_SO: 0.5510 -> 0.0000 (deboost -0.5510, 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 | 7 | 0 | 6 | 1 | predicted_AB: 3.4490 -> 5.5173 (boost 2.0683, 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.2821 -> 0.2673 (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 | 3 | 4 | 2 | 5 | predicted_AB: 5.5173 -> 6.0000 (boost 0.4827, better) | predicted_2B: 0.4500 -> 0.0000 (deboost -0.4500, worse) | AB rounded to 6 (raw=5.52), rates preserved: AVG=0.225 HR/AB=0.009 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6119 -> 1.0000 (boost 0.3881, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3416 -> 0.1670 (deboost -0.1746, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3416 (boost 0.1746, better) | - | 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.233,
"predicted_3B": 0.006,
"predicted_AB": 3.449,
"predicted_AVG": 0.242,
"predicted_BB": 0.261,
"predicted_H": 0.77,
"predicted_HR": 0.05,
"predicted_OBP": 0.283,
"predicted_R": 0.403,
"predicted_RBI": 0.4,
"predicted_SLG": 0.357,
"predicted_SO": 0.551
},
"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.45,
"predicted_3B": 0.0222,
"predicted_AB": 5.5173,
"predicted_AVG": 0.2383,
"predicted_BB": 0.3209,
"predicted_H": 1.2687,
"predicted_HBP": 0.132,
"predicted_HR": 0.0509,
"predicted_OBP": 0.2821,
"predicted_R": 0.6344,
"predicted_RBI": 0.6664,
"predicted_SLG": 0.355,
"predicted_SO": 0.7837
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.233,
"after": 0.45,
"delta": 0.217,
"percent_delta": 0.9313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.006,
"after": 0.0222,
"delta": 0.0162,
"percent_delta": 2.7,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.449,
"after": 5.5173,
"delta": 2.0683,
"percent_delta": 0.5997,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2383,
"delta": -0.0037,
"percent_delta": -0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.261,
"after": 0.3209,
"delta": 0.0599,
"percent_delta": 0.2295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.2687,
"delta": 0.4987,
"percent_delta": 0.6477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0509,
"delta": 0.0009,
"percent_delta": 0.018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.283,
"after": 0.2821,
"delta": -0.0009,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.403,
"after": 0.6344,
"delta": 0.2314,
"percent_delta": 0.5742,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.6664,
"delta": 0.2664,
"percent_delta": 0.666,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.355,
"delta": -0.002,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.551,
"after": 0.7837,
"delta": 0.2327,
"percent_delta": 0.4223,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 7,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.449,
"after": 5.5173,
"delta": 2.0683,
"percent_delta": 0.5997,
"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": 9,
"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.45,
"predicted_3B": 0.0222,
"predicted_AB": 5.5173,
"predicted_AVG": 0.2251,
"predicted_BB": 0.3175,
"predicted_H": 1.2421,
"predicted_HBP": 0.132,
"predicted_HR": 0.0494,
"predicted_OBP": 0.2673,
"predicted_R": 0.6119,
"predicted_RBI": 0.6428,
"predicted_SLG": 0.3416,
"predicted_SO": 0.7919
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.45,
"after": 0.45,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0222,
"after": 0.0222,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.5173,
"after": 5.5173,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2383,
"after": 0.2251,
"delta": -0.0132,
"percent_delta": -0.0554,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3209,
"after": 0.3175,
"delta": -0.0034,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2687,
"after": 1.2421,
"delta": -0.0266,
"percent_delta": -0.021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.132,
"after": 0.132,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0509,
"after": 0.0494,
"delta": -0.0015,
"percent_delta": -0.0295,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2821,
"after": 0.2673,
"delta": -0.0148,
"percent_delta": -0.0525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6344,
"after": 0.6119,
"delta": -0.0225,
"percent_delta": -0.0355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6664,
"after": 0.6428,
"delta": -0.0236,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3416,
"delta": -0.0134,
"percent_delta": -0.0377,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7837,
"after": 0.7919,
"delta": 0.0082,
"percent_delta": 0.0105,
"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.2821,
"after": 0.2673,
"delta": -0.0148,
"percent_delta": -0.0525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.52), rates preserved: AVG=0.225 HR/AB=0.009",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0222,
"after": 0.0,
"delta": -0.0222,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.5173,
"after": 6.0,
"delta": 0.4827,
"percent_delta": 0.0875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3175,
"after": 0.0,
"delta": -0.3175,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2421,
"after": 1.0,
"delta": -0.2421,
"percent_delta": -0.1949,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.132,
"after": 0.0,
"delta": -0.132,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0494,
"after": 0.0,
"delta": -0.0494,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6428,
"after": 1.0,
"delta": 0.3572,
"percent_delta": 0.5557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7919,
"after": 1.0,
"delta": 0.2081,
"percent_delta": 0.2628,
"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": 5.5173,
"after": 6.0,
"delta": 0.4827,
"percent_delta": 0.0875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"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": 6.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": 6.0,
"after": 6.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.6119,
"after": 1.0,
"delta": 0.3881,
"percent_delta": 0.6343,
"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.6119,
"after": 1.0,
"delta": 0.3881,
"percent_delta": 0.6343,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.167,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2251,
"after": 0.167,
"delta": -0.0581,
"percent_delta": -0.2581,
"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.2673,
"after": 0.167,
"delta": -0.1003,
"percent_delta": -0.3752,
"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.3416,
"after": 0.167,
"delta": -0.1746,
"percent_delta": -0.5111,
"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.3416,
"after": 0.167,
"delta": -0.1746,
"percent_delta": -0.5111,
"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": 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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 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": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2251,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2673,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3416,
"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": 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.167,
"after": 0.2251,
"delta": 0.0581,
"percent_delta": 0.348,
"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.167,
"after": 0.2673,
"delta": 0.1003,
"percent_delta": 0.6005,
"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.167,
"after": 0.3416,
"delta": 0.1746,
"percent_delta": 1.0455,
"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.167,
"after": 0.3416,
"delta": 0.1746,
"percent_delta": 1.0455,
"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.233,
"after": 1.0,
"delta": 0.767,
"percent_delta": 3.2918,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.449,
"after": 4.0,
"delta": 0.551,
"percent_delta": 0.1598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2251,
"delta": -0.0169,
"percent_delta": -0.0698,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.261,
"after": 0.0,
"delta": -0.261,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 2.0,
"delta": 1.23,
"percent_delta": 1.5974,
"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.283,
"after": 0.2673,
"delta": -0.0157,
"percent_delta": -0.0555,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.403,
"after": 1.0,
"delta": 0.597,
"percent_delta": 1.4814,
"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.357,
"after": 0.3416,
"delta": -0.0154,
"percent_delta": -0.0431,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.551,
"after": 0.0,
"delta": -0.551,
"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_H",
"before": 0.77,
"after": 2.0,
"delta": 1.23,
"percent_delta": 1.5974,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.551,
"after": 0.0,
"delta": -0.551,
"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.233 | - |
| predicted_3B | 0.006 | - |
| predicted_AB | 3.449 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.261 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.283 | - |
| predicted_R | 0.403 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.357 | - |
| predicted_SO | 0.551 | - |
Final model 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.450 | 0.217 |
| predicted_3B | 0.022 | 0.016 |
| predicted_AB | 5.517 | 2.068 |
| predicted_AVG | 0.238 | -0.004 |
| predicted_BB | 0.321 | 0.060 |
| predicted_H | 1.269 | 0.499 |
| predicted_HBP | 0.132 | - |
| predicted_HR | 0.051 | 0.001 |
| predicted_OBP | 0.282 | -0.001 |
| predicted_R | 0.634 | 0.231 |
| predicted_RBI | 0.666 | 0.266 |
| predicted_SLG | 0.355 | -0.002 |
| predicted_SO | 0.784 | 0.233 |
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.450 | 0.000 |
| predicted_3B | 0.022 | 0.000 |
| predicted_AB | 5.517 | 0.000 |
| predicted_AVG | 0.225 | -0.013 |
| predicted_BB | 0.318 | -0.003 |
| predicted_H | 1.242 | -0.027 |
| predicted_HBP | 0.132 | 0.000 |
| predicted_HR | 0.049 | -0.002 |
| predicted_OBP | 0.267 | -0.015 |
| predicted_R | 0.612 | -0.022 |
| predicted_RBI | 0.643 | -0.024 |
| predicted_SLG | 0.342 | -0.013 |
| predicted_SO | 0.792 | 0.008 |
AB rounded to 6 (raw=5.52), rates preserved: AVG=0.225 HR/AB=0.009
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.450 |
| predicted_3B | 0.000 | -0.022 |
| predicted_AB | 6.000 | 0.483 |
| predicted_AVG | 0.167 | -0.058 |
| predicted_BB | 0.000 | -0.318 |
| predicted_H | 1.000 | -0.242 |
| predicted_HR | 0.000 | -0.049 |
| predicted_OBP | 0.167 | -0.100 |
| predicted_R | 1.000 | 0.388 |
| predicted_RBI | 1.000 | 0.357 |
| predicted_SLG | 0.167 | -0.175 |
| predicted_SO | 1.000 | 0.208 |
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 | -2.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 | 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 | - | 18.000 | 5.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.000 | 1.000 | 0.2778 | 0.2778 | 0.3889 | 0.2778 | 0.0000 | 0.0556 | 0.0000 | 0.0556 |
| last_10 | 0.20 | 9 | - | 39.000 | 13.000 | 6.000 | 1.000 | 0.000 | 8.000 | 4.000 | 0.000 | 4.000 | 0.3333 | 0.3333 | 0.5385 | 0.3333 | 0.0000 | 0.2051 | 0.0000 | 0.1026 |
| season | 0.60 | 55 | - | 607.000 | 116.000 | 41.000 | 1.000 | 5.000 | 75.000 | 71.000 | 46.000 | 97.000 | 0.1911 | 0.2657 | 0.2867 | 0.1911 | 0.0082 | 0.1236 | 0.0758 | 0.1598 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7290 |
| predicted_3B | 0.0430 |
| predicted_AB | 8.1770 |
| predicted_AVG | 0.2336 |
| predicted_BB | 0.3980 |
| predicted_H | 1.9100 |
| predicted_HBP | 0.1320 |
| predicted_HR | 0.0520 |
| predicted_OBP | 0.2809 |
| predicted_R | 0.9320 |
| predicted_RBI | 1.0090 |
| predicted_SLG | 0.3525 |
| predicted_SO | 1.0830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2330 | 0.7290 | 0.4500 | model_form_blend |
| predicted_3B | 0.0060 | 0.0430 | 0.0222 | model_form_blend |
| predicted_AB | 3.4490 | 8.1770 | 5.5173 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2336 | 0.2383 | model_form_blend |
| predicted_BB | 0.2610 | 0.3980 | 0.3209 | model_form_blend |
| predicted_H | 0.7700 | 1.9100 | 1.2687 | model_form_blend |
| predicted_HBP | - | 0.1320 | 0.1320 | form_only |
| predicted_HR | 0.0500 | 0.0520 | 0.0509 | model_form_blend |
| predicted_OBP | 0.2830 | 0.2809 | 0.2821 | model_form_blend |
| predicted_R | 0.4030 | 0.9320 | 0.6344 | model_form_blend |
| predicted_RBI | 0.4000 | 1.0090 | 0.6664 | model_form_blend |
| predicted_SLG | 0.3570 | 0.3525 | 0.3550 | model_form_blend |
| predicted_SO | 0.5510 | 1.0830 | 0.7837 | 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 | 176 |
| 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.191 |
| 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 | 3B |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 702332 |
| playerID | 702332 |
| playerName | Caleb Durbin |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 14.5 |
| sl_bb_percent | 5.5 |
| sl_woba | 0.246 |
| sl_xwoba | 0.268 |
| sl_xba | 0.23 |
| sl_xslg | 0.295 |
| sl_sweet_spot_percent | 23.7 |
| sl_barrel_batted_rate | 1.9 |
| sl_hard_hit_percent | 30.1 |
| sl_exit_velocity_avg | 85.3 |
| sl_launch_angle_avg | 8.1 |
| sl_whiff_percent | 15.4 |
| sl_swing_percent | 45.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.039 | 0.000 | 0.000 | Hitting_2B | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.987 | 4.000 | 4.000 | Hitting_AB | 2.768 | 1.000 | 1.232 | 3.000 |
| predicted_AVG | 0.262 | 0.500 | 0.250 | Hitting_AVG | 0.313 | 0.000 | 0.187 | 0.500 |
| predicted_BB | 0.408 | 0.000 | 0.000 | Hitting_BB | 0.378 | 0.000 | -0.378 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_H | 0.620 | 2.000 | 1.000 | Hitting_H | 0.866 | 0.000 | 1.134 | 2.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_OBP | 0.286 | 0.500 | 0.250 | Hitting_OBP | 0.395 | 0.000 | 0.105 | 0.500 |
| predicted_R | 0.553 | 1.000 | 1.000 | Hitting_R | 0.512 | 0.000 | 0.488 | 1.000 |
| predicted_RBI | 0.320 | 0.000 | 0.000 | Hitting_RBI | 0.439 | 0.000 | -0.439 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.146 | 0.000 | -0.146 | 0.000 |
| predicted_SLG | 0.333 | 0.500 | 0.250 | Hitting_SLG | 0.379 | 0.000 | 0.121 | 0.500 |
| predicted_SO | 0.434 | 1.000 | 1.000 | Hitting_SO | 0.402 | 0.000 | 0.598 | 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_H: 0.6200 -> 2.0000 (boost 1.3800, better) |
| Biggest Deboost | predicted_BB: 0.4080 -> 0.0000 (deboost -0.4080, 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 | 6 | 1 | predicted_AB: 2.9870 -> 4.0564 (boost 1.0694, 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 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3005 -> 0.3104 (boost 0.0099, better) | predicted_SLG: 0.3302 -> 0.3004 (deboost -0.0298, 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.6056 -> 1.0000 (boost 0.3944, worse) | predicted_BB: 0.4689 -> 0.0000 (deboost -0.4689, worse) | AB rounded to 4 (raw=4.06), rates preserved: AVG=0.231 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6569 -> 1.0000 (boost 0.3431, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2307 -> 0.2500 (boost 0.0193, better) | predicted_OBP: 0.3104 -> 0.2500 (deboost -0.0604, 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_H: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2500 -> 0.3104 (boost 0.0604, better) | predicted_AVG: 0.2500 -> 0.2307 (deboost -0.0193, 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": "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.039,
"predicted_3B": 0.0,
"predicted_AB": 2.987,
"predicted_AVG": 0.262,
"predicted_BB": 0.408,
"predicted_H": 0.62,
"predicted_HR": 0.06,
"predicted_OBP": 0.286,
"predicted_R": 0.553,
"predicted_RBI": 0.32,
"predicted_SLG": 0.333,
"predicted_SO": 0.434
},
"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.0889,
"predicted_3B": 0.0008,
"predicted_AB": 4.0564,
"predicted_AVG": 0.2598,
"predicted_BB": 0.4739,
"predicted_H": 0.956,
"predicted_HBP": 0.005,
"predicted_HR": 0.0659,
"predicted_OBP": 0.3005,
"predicted_R": 0.681,
"predicted_RBI": 0.471,
"predicted_SLG": 0.3302,
"predicted_SO": 0.5993
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.039,
"after": 0.0889,
"delta": 0.0499,
"percent_delta": 1.2795,
"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.987,
"after": 4.0564,
"delta": 1.0694,
"percent_delta": 0.358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2598,
"delta": -0.0022,
"percent_delta": -0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 0.4739,
"delta": 0.0659,
"percent_delta": 0.1615,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 0.956,
"delta": 0.336,
"percent_delta": 0.5419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0659,
"delta": 0.0059,
"percent_delta": 0.0983,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.3005,
"delta": 0.0145,
"percent_delta": 0.0507,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.553,
"after": 0.681,
"delta": 0.128,
"percent_delta": 0.2315,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.471,
"delta": 0.151,
"percent_delta": 0.4719,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3302,
"delta": -0.0028,
"percent_delta": -0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.434,
"after": 0.5993,
"delta": 0.1653,
"percent_delta": 0.3809,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 7,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.987,
"after": 4.0564,
"delta": 1.0694,
"percent_delta": 0.358,
"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": 9,
"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.0889,
"predicted_3B": 0.0008,
"predicted_AB": 4.0564,
"predicted_AVG": 0.2307,
"predicted_BB": 0.4689,
"predicted_H": 0.9359,
"predicted_HBP": 0.005,
"predicted_HR": 0.064,
"predicted_OBP": 0.3104,
"predicted_R": 0.6569,
"predicted_RBI": 0.4543,
"predicted_SLG": 0.3004,
"predicted_SO": 0.6056
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0889,
"after": 0.0889,
"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.0564,
"after": 4.0564,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2598,
"after": 0.2307,
"delta": -0.0291,
"percent_delta": -0.112,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4739,
"after": 0.4689,
"delta": -0.005,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.956,
"after": 0.9359,
"delta": -0.0201,
"percent_delta": -0.021,
"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.0659,
"after": 0.064,
"delta": -0.0019,
"percent_delta": -0.0288,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3005,
"after": 0.3104,
"delta": 0.0099,
"percent_delta": 0.0329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.681,
"after": 0.6569,
"delta": -0.0241,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.471,
"after": 0.4543,
"delta": -0.0167,
"percent_delta": -0.0355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3302,
"after": 0.3004,
"delta": -0.0298,
"percent_delta": -0.0902,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5993,
"after": 0.6056,
"delta": 0.0063,
"percent_delta": 0.0105,
"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.3005,
"after": 0.3104,
"delta": 0.0099,
"percent_delta": 0.0329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3302,
"after": 0.3004,
"delta": -0.0298,
"percent_delta": -0.0902,
"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.231 HR/AB=0.016",
"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.0889,
"after": 0.0,
"delta": -0.0889,
"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.0564,
"after": 4.0,
"delta": -0.0564,
"percent_delta": -0.0139,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4689,
"after": 0.0,
"delta": -0.4689,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9359,
"after": 1.0,
"delta": 0.0641,
"percent_delta": 0.0685,
"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.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4543,
"after": 0.0,
"delta": -0.4543,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6056,
"after": 1.0,
"delta": 0.3944,
"percent_delta": 0.6513,
"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.6056,
"after": 1.0,
"delta": 0.3944,
"percent_delta": 0.6513,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4689,
"after": 0.0,
"delta": -0.4689,
"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.6569,
"after": 1.0,
"delta": 0.3431,
"percent_delta": 0.5223,
"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.6569,
"after": 1.0,
"delta": 0.3431,
"percent_delta": 0.5223,
"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.2307,
"after": 0.25,
"delta": 0.0193,
"percent_delta": 0.0837,
"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.3104,
"after": 0.25,
"delta": -0.0604,
"percent_delta": -0.1946,
"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.3004,
"after": 0.25,
"delta": -0.0504,
"percent_delta": -0.1678,
"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.2307,
"after": 0.25,
"delta": 0.0193,
"percent_delta": 0.0837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3104,
"after": 0.25,
"delta": -0.0604,
"percent_delta": -0.1946,
"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": 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": 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": 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": 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": 4.0,
"predicted_AVG": 0.2307,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3104,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3004,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2307,
"delta": -0.0193,
"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_CS",
"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.3104,
"delta": 0.0604,
"percent_delta": 0.2418,
"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.3004,
"delta": 0.0504,
"percent_delta": 0.2014,
"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_OBP",
"before": 0.25,
"after": 0.3104,
"delta": 0.0604,
"percent_delta": 0.2418,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2307,
"delta": -0.0193,
"percent_delta": -0.0771,
"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.039,
"after": 0.0,
"delta": -0.039,
"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.987,
"after": 4.0,
"delta": 1.013,
"percent_delta": 0.3391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2307,
"delta": -0.0313,
"percent_delta": -0.1195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.62,
"after": 2.0,
"delta": 1.38,
"percent_delta": 2.2258,
"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.286,
"after": 0.3104,
"delta": 0.0244,
"percent_delta": 0.0853,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.553,
"after": 1.0,
"delta": 0.447,
"percent_delta": 0.8083,
"direction": "boost",
"projection_effect": "better",
"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.333,
"after": 0.3004,
"delta": -0.0326,
"percent_delta": -0.0979,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.434,
"after": 1.0,
"delta": 0.566,
"percent_delta": 1.3041,
"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_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_BB",
"before": 0.408,
"after": 0.0,
"delta": -0.408,
"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.039 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.987 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.408 | - |
| predicted_H | 0.620 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.286 | - |
| predicted_R | 0.553 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.333 | - |
| predicted_SO | 0.434 | - |
Final model 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.089 | 0.050 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.056 | 1.069 |
| predicted_AVG | 0.260 | -0.002 |
| predicted_BB | 0.474 | 0.066 |
| predicted_H | 0.956 | 0.336 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.066 | 0.006 |
| predicted_OBP | 0.300 | 0.015 |
| predicted_R | 0.681 | 0.128 |
| predicted_RBI | 0.471 | 0.151 |
| predicted_SLG | 0.330 | -0.003 |
| predicted_SO | 0.599 | 0.165 |
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.089 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.056 | 0.000 |
| predicted_AVG | 0.231 | -0.029 |
| predicted_BB | 0.469 | -0.005 |
| predicted_H | 0.936 | -0.020 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.064 | -0.002 |
| predicted_OBP | 0.310 | 0.010 |
| predicted_R | 0.657 | -0.024 |
| predicted_RBI | 0.454 | -0.017 |
| predicted_SLG | 0.300 | -0.030 |
| predicted_SO | 0.606 | 0.006 |
AB rounded to 4 (raw=4.06), rates preserved: AVG=0.231 HR/AB=0.016
| 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.089 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.056 |
| predicted_AVG | 0.250 | 0.019 |
| predicted_BB | 0.000 | -0.469 |
| predicted_H | 1.000 | 0.064 |
| predicted_HR | 0.000 | -0.064 |
| predicted_OBP | 0.250 | -0.060 |
| predicted_R | 1.000 | 0.343 |
| predicted_RBI | 0.000 | -0.454 |
| predicted_SLG | 0.250 | -0.050 |
| predicted_SO | 1.000 | 0.394 |
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 | 1.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 | 1.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 2.000 | 0.0625 | 0.0625 | 0.1250 | 0.0625 | 0.0000 | 0.0625 | 0.0000 | 0.1250 |
| last_10 | 0.20 | 9 | - | 34.000 | 10.000 | 1.000 | 0.000 | 0.000 | 2.000 | 6.000 | 4.000 | 5.000 | 0.2941 | 0.3684 | 0.3235 | 0.2941 | 0.0000 | 0.0588 | 0.1177 | 0.1471 |
| season | 0.60 | 32 | - | 227.000 | 71.000 | 3.000 | 0.000 | 4.000 | 36.000 | 42.000 | 31.000 | 33.000 | 0.3128 | 0.3953 | 0.3789 | 0.3128 | 0.0176 | 0.1586 | 0.1366 | 0.1454 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1580 |
| predicted_3B | 0.0020 |
| predicted_AB | 5.5360 |
| predicted_AVG | 0.2568 |
| predicted_BB | 0.5650 |
| predicted_H | 1.4210 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.0740 |
| predicted_OBP | 0.3206 |
| predicted_R | 0.8580 |
| predicted_RBI | 0.6800 |
| predicted_SLG | 0.3263 |
| predicted_SO | 0.8280 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0390 | 0.1580 | 0.0889 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9870 | 5.5360 | 4.0564 | model_form_blend |
| predicted_AVG | 0.2620 | 0.2568 | 0.2598 | model_form_blend |
| predicted_BB | 0.4080 | 0.5650 | 0.4739 | model_form_blend |
| predicted_H | 0.6200 | 1.4210 | 0.9560 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.0600 | 0.0740 | 0.0659 | model_form_blend |
| predicted_OBP | 0.2860 | 0.3206 | 0.3005 | model_form_blend |
| predicted_R | 0.5530 | 0.8580 | 0.6810 | model_form_blend |
| predicted_RBI | 0.3200 | 0.6800 | 0.4710 | model_form_blend |
| predicted_SLG | 0.3330 | 0.3263 | 0.3302 | model_form_blend |
| predicted_SO | 0.4340 | 0.8280 | 0.5993 | 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 | 82 |
| Season rows before report date | 82 |
| Report year | 2026 |
| Profile rows used | 76 |
| 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.313 |
| 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 | 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 | 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-SS |
| gameID | 20260607_BOS@NYY |
| game_type | ph |
| mlbID | 643396 |
| note | Grounded into a double play for Mayer in the 7th. |
| playerID | 643396 |
| playerName | Isiah Kiner-Falefa |
| pos | 2B |
| started | False |
| startingPosition | PH |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 15.2 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.3 |
| sl_xwoba | 0.301 |
| sl_xba | 0.264 |
| sl_xslg | 0.347 |
| sl_sweet_spot_percent | 38.2 |
| sl_barrel_batted_rate | 4.0 |
| sl_hard_hit_percent | 27.6 |
| sl_exit_velocity_avg | 83.4 |
| sl_launch_angle_avg | 10.7 |
| sl_whiff_percent | 17.9 |
| 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.114 | 0.000 | 0.000 | Hitting_2B | 0.112 | 0.000 | -0.112 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.323 | 4.000 | 5.000 | Hitting_AB | 3.265 | 2.000 | 0.735 | 2.000 |
| predicted_AVG | 0.230 | 0.250 | 0.200 | Hitting_AVG | 0.214 | 0.000 | 0.036 | 0.250 |
| predicted_BB | 0.246 | 0.000 | 0.000 | Hitting_BB | 0.241 | 0.000 | -0.241 | 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.700 | 0.000 | 0.300 | 1.000 |
| predicted_HR | 0.030 | 1.000 | 0.000 | Hitting_HR | 0.041 | 0.000 | 0.959 | 1.000 |
| predicted_OBP | 0.258 | 0.250 | 0.200 | Hitting_OBP | 0.274 | 0.000 | -0.024 | 0.250 |
| predicted_R | 0.246 | 1.000 | 0.000 | Hitting_R | 0.247 | 0.000 | 0.753 | 1.000 |
| predicted_RBI | 0.130 | 2.000 | 0.000 | Hitting_RBI | 0.276 | 0.000 | 1.724 | 2.000 |
| predicted_SLG | 0.306 | 1.000 | 0.200 | Hitting_SLG | 0.286 | 0.000 | 0.714 | 1.000 |
| predicted_SO | 0.701 | 0.000 | 1.000 | Hitting_SO | 0.688 | 0.000 | -0.688 | 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_RBI: 0.1300 -> 2.0000 (boost 1.8700, better) |
| Biggest Deboost | predicted_SO: 0.7010 -> 0.0000 (deboost -0.7010, 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 | 8 | 6 | 2 | 5 | 3 | predicted_AB: 3.3230 -> 5.0086 (boost 1.6856, better) | predicted_SLG: 0.3060 -> 0.2892 (deboost -0.0168, 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.2892 -> 0.2130 (deboost -0.0762, 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.7989 -> 1.0000 (boost 0.2011, better) | predicted_RBI: 0.3590 -> 0.0000 (deboost -0.3590, worse) | AB rounded to 5 (raw=5.01), rates preserved: AVG=0.159 HR/AB=0.009 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4380 -> 0.0000 (deboost -0.4380, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.1595 -> 0.2000 (boost 0.0405, better) | predicted_SLG: 0.2130 -> 0.2000 (deboost -0.0130, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 3 | 2 | 4 | 1 | predicted_RBI: 0.0000 -> 2.0000 (boost 2.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 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2000 -> 0.2130 (boost 0.0130, better) | predicted_AVG: 0.2000 -> 0.1595 (deboost -0.0405, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691785",
"player_name": "Marcelo Mayer",
"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.114,
"predicted_3B": 0.0,
"predicted_AB": 3.323,
"predicted_AVG": 0.23,
"predicted_BB": 0.246,
"predicted_H": 0.24,
"predicted_HR": 0.03,
"predicted_OBP": 0.258,
"predicted_R": 0.246,
"predicted_RBI": 0.13,
"predicted_SLG": 0.306,
"predicted_SO": 0.701
},
"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.1354,
"predicted_3B": 0.0004,
"predicted_AB": 5.0086,
"predicted_AVG": 0.2243,
"predicted_BB": 0.3062,
"predicted_H": 0.816,
"predicted_HBP": 0.107,
"predicted_HR": 0.0453,
"predicted_OBP": 0.2595,
"predicted_R": 0.4541,
"predicted_RBI": 0.3722,
"predicted_SLG": 0.2892,
"predicted_SO": 0.9061
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.114,
"after": 0.1354,
"delta": 0.0214,
"percent_delta": 0.1877,
"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.323,
"after": 5.0086,
"delta": 1.6856,
"percent_delta": 0.5073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2243,
"delta": -0.0057,
"percent_delta": -0.0248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.246,
"after": 0.3062,
"delta": 0.0602,
"percent_delta": 0.2447,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.24,
"after": 0.816,
"delta": 0.576,
"percent_delta": 2.4,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0453,
"delta": 0.0153,
"percent_delta": 0.51,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.258,
"after": 0.2595,
"delta": 0.0015,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.246,
"after": 0.4541,
"delta": 0.2081,
"percent_delta": 0.8459,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.3722,
"delta": 0.2422,
"percent_delta": 1.8631,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.2892,
"delta": -0.0168,
"percent_delta": -0.0549,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.701,
"after": 0.9061,
"delta": 0.2051,
"percent_delta": 0.2926,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 6,
"deboosted_metrics": 2,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.323,
"after": 5.0086,
"delta": 1.6856,
"percent_delta": 0.5073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.2892,
"delta": -0.0168,
"percent_delta": -0.0549,
"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": 9,
"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.1354,
"predicted_3B": 0.0004,
"predicted_AB": 5.0086,
"predicted_AVG": 0.1595,
"predicted_BB": 0.303,
"predicted_H": 0.7989,
"predicted_HBP": 0.107,
"predicted_HR": 0.044,
"predicted_OBP": 0.2074,
"predicted_R": 0.438,
"predicted_RBI": 0.359,
"predicted_SLG": 0.213,
"predicted_SO": 0.9156
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1354,
"after": 0.1354,
"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": 5.0086,
"after": 5.0086,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2243,
"after": 0.1595,
"delta": -0.0648,
"percent_delta": -0.2889,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3062,
"after": 0.303,
"delta": -0.0032,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.816,
"after": 0.7989,
"delta": -0.0171,
"percent_delta": -0.021,
"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.0453,
"after": 0.044,
"delta": -0.0013,
"percent_delta": -0.0287,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2595,
"after": 0.2074,
"delta": -0.0521,
"percent_delta": -0.2008,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4541,
"after": 0.438,
"delta": -0.0161,
"percent_delta": -0.0355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3722,
"after": 0.359,
"delta": -0.0132,
"percent_delta": -0.0355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2892,
"after": 0.213,
"delta": -0.0762,
"percent_delta": -0.2635,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9061,
"after": 0.9156,
"delta": 0.0095,
"percent_delta": 0.0105,
"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.2892,
"after": 0.213,
"delta": -0.0762,
"percent_delta": -0.2635,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.01), rates preserved: AVG=0.159 HR/AB=0.009",
"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.1354,
"after": 0.0,
"delta": -0.1354,
"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": 5.0086,
"after": 5.0,
"delta": -0.0086,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.303,
"after": 0.0,
"delta": -0.303,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7989,
"after": 1.0,
"delta": 0.2011,
"percent_delta": 0.2517,
"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.044,
"after": 0.0,
"delta": -0.044,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.359,
"after": 0.0,
"delta": -0.359,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9156,
"after": 1.0,
"delta": 0.0844,
"percent_delta": 0.0922,
"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.7989,
"after": 1.0,
"delta": 0.2011,
"percent_delta": 0.2517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.359,
"after": 0.0,
"delta": -0.359,
"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": 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": 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.438,
"after": 0.0,
"delta": -0.438,
"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.438,
"after": 0.0,
"delta": -0.438,
"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": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 0.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.1595,
"after": 0.2,
"delta": 0.0405,
"percent_delta": 0.2539,
"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.2074,
"after": 0.2,
"delta": -0.0074,
"percent_delta": -0.0357,
"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.213,
"after": 0.2,
"delta": -0.013,
"percent_delta": -0.061,
"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.1595,
"after": 0.2,
"delta": 0.0405,
"percent_delta": 0.2539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.213,
"after": 0.2,
"delta": -0.013,
"percent_delta": -0.061,
"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": 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": 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": 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": 3,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 1,
"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_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.1595,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2074,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.213,
"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.2,
"after": 0.1595,
"delta": -0.0405,
"percent_delta": -0.2025,
"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.2,
"after": 0.2074,
"delta": 0.0074,
"percent_delta": 0.0372,
"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.2,
"after": 0.213,
"delta": 0.013,
"percent_delta": 0.0652,
"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.2,
"after": 0.213,
"delta": 0.013,
"percent_delta": 0.0652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.1595,
"delta": -0.0405,
"percent_delta": -0.2025,
"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": 3.323,
"after": 4.0,
"delta": 0.677,
"percent_delta": 0.2037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.1595,
"delta": -0.0705,
"percent_delta": -0.3065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.246,
"after": 0.0,
"delta": -0.246,
"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": 1.0,
"delta": 0.97,
"percent_delta": 32.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.258,
"after": 0.2074,
"delta": -0.0506,
"percent_delta": -0.1961,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.246,
"after": 1.0,
"delta": 0.754,
"percent_delta": 3.065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 2.0,
"delta": 1.87,
"percent_delta": 14.3846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.213,
"delta": -0.093,
"percent_delta": -0.3039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.701,
"after": 0.0,
"delta": -0.701,
"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.13,
"after": 2.0,
"delta": 1.87,
"percent_delta": 14.3846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.701,
"after": 0.0,
"delta": -0.701,
"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.114 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.323 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.246 | - |
| predicted_H | 0.240 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.258 | - |
| predicted_R | 0.246 | - |
| predicted_RBI | 0.130 | - |
| predicted_SLG | 0.306 | - |
| predicted_SO | 0.701 | - |
Final model 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.135 | 0.021 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.009 | 1.686 |
| predicted_AVG | 0.224 | -0.006 |
| predicted_BB | 0.306 | 0.060 |
| predicted_H | 0.816 | 0.576 |
| predicted_HBP | 0.107 | - |
| predicted_HR | 0.045 | 0.015 |
| predicted_OBP | 0.260 | 0.002 |
| predicted_R | 0.454 | 0.208 |
| predicted_RBI | 0.372 | 0.242 |
| predicted_SLG | 0.289 | -0.017 |
| predicted_SO | 0.906 | 0.205 |
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.135 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.009 | 0.000 |
| predicted_AVG | 0.160 | -0.065 |
| predicted_BB | 0.303 | -0.003 |
| predicted_H | 0.799 | -0.017 |
| predicted_HBP | 0.107 | 0.000 |
| predicted_HR | 0.044 | -0.001 |
| predicted_OBP | 0.207 | -0.052 |
| predicted_R | 0.438 | -0.016 |
| predicted_RBI | 0.359 | -0.013 |
| predicted_SLG | 0.213 | -0.076 |
| predicted_SO | 0.916 | 0.009 |
AB rounded to 5 (raw=5.01), rates preserved: AVG=0.159 HR/AB=0.009
| 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 | - |
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 | 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.135 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.009 |
| predicted_AVG | 0.200 | 0.041 |
| predicted_BB | 0.000 | -0.303 |
| predicted_H | 1.000 | 0.201 |
| predicted_HR | 0.000 | -0.044 |
| predicted_OBP | 0.200 | -0.007 |
| predicted_R | 0.000 | -0.438 |
| predicted_RBI | 0.000 | -0.359 |
| predicted_SLG | 0.200 | -0.013 |
| predicted_SO | 1.000 | 0.084 |
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 | - | 13.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 1.000 | 0.1538 | 0.1538 | 0.1538 | 0.1538 | 0.0000 | 0.0769 | 0.0000 | 0.0769 |
| last_10 | 0.20 | 9 | - | 27.000 | 8.000 | 0.000 | 0.000 | 0.000 | 4.000 | 6.000 | 1.000 | 2.000 | 0.2963 | 0.3333 | 0.2963 | 0.2963 | 0.0000 | 0.1482 | 0.0370 | 0.0741 |
| season | 0.60 | 55 | - | 555.000 | 119.000 | 19.000 | 0.000 | 7.000 | 47.000 | 41.000 | 41.000 | 117.000 | 0.2144 | 0.2741 | 0.2865 | 0.2144 | 0.0126 | 0.0847 | 0.0739 | 0.2108 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1630 |
| predicted_3B | 0.0010 |
| predicted_AB | 7.1860 |
| predicted_AVG | 0.2170 |
| predicted_BB | 0.3840 |
| predicted_H | 1.5600 |
| predicted_HBP | 0.1070 |
| predicted_HR | 0.0650 |
| predicted_OBP | 0.2614 |
| predicted_R | 0.7230 |
| predicted_RBI | 0.6850 |
| predicted_SLG | 0.2674 |
| predicted_SO | 1.1710 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1140 | 0.1630 | 0.1354 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.3230 | 7.1860 | 5.0086 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2170 | 0.2243 | model_form_blend |
| predicted_BB | 0.2460 | 0.3840 | 0.3062 | model_form_blend |
| predicted_H | 0.2400 | 1.5600 | 0.8160 | model_form_blend |
| predicted_HBP | - | 0.1070 | 0.1070 | form_only |
| predicted_HR | 0.0300 | 0.0650 | 0.0453 | model_form_blend |
| predicted_OBP | 0.2580 | 0.2614 | 0.2595 | model_form_blend |
| predicted_R | 0.2460 | 0.7230 | 0.4541 | model_form_blend |
| predicted_RBI | 0.1300 | 0.6850 | 0.3722 | model_form_blend |
| predicted_SLG | 0.3060 | 0.2674 | 0.2892 | model_form_blend |
| predicted_SO | 0.7010 | 1.1710 | 0.9061 | 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 | 170 |
| Season rows before report date | 170 |
| Report year | 2026 |
| Profile rows used | 167 |
| 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.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 | 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 | 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 | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 691785 |
| playerID | 691785 |
| playerName | Marcelo Mayer |
| pos | 2B |
| started | True |
| startingPosition | SS |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 17.9 |
| sl_bb_percent | 6.5 |
| sl_woba | 0.259 |
| sl_xwoba | 0.257 |
| sl_xba | 0.201 |
| sl_xslg | 0.292 |
| sl_sweet_spot_percent | 27.4 |
| sl_barrel_batted_rate | 6.0 |
| sl_hard_hit_percent | 37.0 |
| sl_exit_velocity_avg | 86.8 |
| sl_launch_angle_avg | 9.4 |
| sl_whiff_percent | 26.2 |
| sl_swing_percent | 51.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.154 | 0.000 | 0.000 | Hitting_2B | 0.151 | 0.000 | -0.151 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.197 | 3.000 | 6.000 | Hitting_AB | 3.143 | 3.000 | -0.143 | 0.000 |
| predicted_AVG | 0.241 | 0.000 | 0.167 | Hitting_AVG | 0.203 | 0.000 | -0.203 | 0.000 |
| predicted_BB | 0.308 | 0.000 | 1.000 | Hitting_BB | 0.303 | 0.000 | -0.303 | 0.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.639 | 0.000 | -0.639 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.059 | 0.000 | -0.059 | 0.000 |
| predicted_OBP | 0.298 | 0.000 | 0.286 | Hitting_OBP | 0.285 | 0.000 | -0.285 | 0.000 |
| predicted_R | 0.402 | 0.000 | 1.000 | Hitting_R | 0.395 | 0.000 | -0.395 | 0.000 |
| predicted_RBI | 0.210 | 0.000 | 0.000 | Hitting_RBI | 0.092 | 0.000 | -0.092 | 0.000 |
| predicted_SLG | 0.330 | 0.000 | 0.167 | Hitting_SLG | 0.307 | 0.000 | -0.307 | 0.000 |
| predicted_SO | 1.085 | 0.000 | 2.000 | Hitting_SO | 1.067 | 1.000 | -1.067 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 11 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | - |
| Biggest Deboost | predicted_SO: 1.0850 -> 0.0000 (deboost -1.0850, 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 | 9 | 6 | 3 | 5 | 4 | predicted_AB: 3.1970 -> 5.8119 (boost 2.6149, better) | predicted_SLG: 0.3300 -> 0.3051 (deboost -0.0249, 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.2168 -> 0.1856 (deboost -0.0312, 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_BB: 0.4959 -> 1.0000 (boost 0.5041, better) | predicted_2B: 0.2422 -> 0.0000 (deboost -0.2422, worse) | AB rounded to 6 (raw=5.81), rates preserved: AVG=0.186 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6456 -> 1.0000 (boost 0.3544, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2496 -> 0.2860 (boost 0.0364, better) | predicted_SLG: 0.2768 -> 0.1670 (deboost -0.1098, 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: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.2768 (boost 0.1098, better) | predicted_OBP: 0.2860 -> 0.2496 (deboost -0.0364, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665966",
"player_name": "Carlos Narváez",
"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.154,
"predicted_3B": 0.0,
"predicted_AB": 3.197,
"predicted_AVG": 0.241,
"predicted_BB": 0.308,
"predicted_H": 0.64,
"predicted_HR": 0.06,
"predicted_OBP": 0.298,
"predicted_R": 0.402,
"predicted_RBI": 0.21,
"predicted_SLG": 0.33,
"predicted_SO": 1.085
},
"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.2422,
"predicted_3B": 0.0009,
"predicted_AB": 5.8119,
"predicted_AVG": 0.2168,
"predicted_BB": 0.5012,
"predicted_H": 1.1018,
"predicted_HBP": 0.134,
"predicted_HR": 0.0983,
"predicted_OBP": 0.2792,
"predicted_R": 0.6693,
"predicted_RBI": 0.241,
"predicted_SLG": 0.3051,
"predicted_SO": 2.0602
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.154,
"after": 0.2422,
"delta": 0.0882,
"percent_delta": 0.5727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.197,
"after": 5.8119,
"delta": 2.6149,
"percent_delta": 0.8179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2168,
"delta": -0.0242,
"percent_delta": -0.1004,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.308,
"after": 0.5012,
"delta": 0.1932,
"percent_delta": 0.6273,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.1018,
"delta": 0.4618,
"percent_delta": 0.7216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0983,
"delta": 0.0383,
"percent_delta": 0.6383,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.2792,
"delta": -0.0188,
"percent_delta": -0.0631,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.402,
"after": 0.6693,
"delta": 0.2673,
"percent_delta": 0.6649,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.21,
"after": 0.241,
"delta": 0.031,
"percent_delta": 0.1476,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.33,
"after": 0.3051,
"delta": -0.0249,
"percent_delta": -0.0755,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.085,
"after": 2.0602,
"delta": 0.9752,
"percent_delta": 0.8988,
"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_AB",
"before": 3.197,
"after": 5.8119,
"delta": 2.6149,
"percent_delta": 0.8179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.33,
"after": 0.3051,
"delta": -0.0249,
"percent_delta": -0.0755,
"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": 3,
"last_10": 4,
"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.2422,
"predicted_3B": 0.0009,
"predicted_AB": 5.8119,
"predicted_AVG": 0.1856,
"predicted_BB": 0.4959,
"predicted_H": 1.0787,
"predicted_HBP": 0.134,
"predicted_HR": 0.0954,
"predicted_OBP": 0.2496,
"predicted_R": 0.6456,
"predicted_RBI": 0.2325,
"predicted_SLG": 0.2768,
"predicted_SO": 2.0818
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2422,
"after": 0.2422,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.8119,
"after": 5.8119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2168,
"after": 0.1856,
"delta": -0.0312,
"percent_delta": -0.1439,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5012,
"after": 0.4959,
"delta": -0.0053,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1018,
"after": 1.0787,
"delta": -0.0231,
"percent_delta": -0.021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.134,
"after": 0.134,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0983,
"after": 0.0954,
"delta": -0.0029,
"percent_delta": -0.0295,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2792,
"after": 0.2496,
"delta": -0.0296,
"percent_delta": -0.106,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6693,
"after": 0.6456,
"delta": -0.0237,
"percent_delta": -0.0354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.241,
"after": 0.2325,
"delta": -0.0085,
"percent_delta": -0.0353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3051,
"after": 0.2768,
"delta": -0.0283,
"percent_delta": -0.0928,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0602,
"after": 2.0818,
"delta": 0.0216,
"percent_delta": 0.0105,
"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.2168,
"after": 0.1856,
"delta": -0.0312,
"percent_delta": -0.1439,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.81), rates preserved: AVG=0.186 HR/AB=0.016",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2422,
"after": 0.0,
"delta": -0.2422,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.8119,
"after": 6.0,
"delta": 0.1881,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4959,
"after": 1.0,
"delta": 0.5041,
"percent_delta": 1.0165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0787,
"after": 1.0,
"delta": -0.0787,
"percent_delta": -0.073,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.134,
"after": 0.0,
"delta": -0.134,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0954,
"after": 0.0,
"delta": -0.0954,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2325,
"after": 0.0,
"delta": -0.2325,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0818,
"after": 2.0,
"delta": -0.0818,
"percent_delta": -0.0393,
"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_BB",
"before": 0.4959,
"after": 1.0,
"delta": 0.5041,
"percent_delta": 1.0165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2422,
"after": 0.0,
"delta": -0.2422,
"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": 6.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": 6.0,
"after": 6.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.6456,
"after": 1.0,
"delta": 0.3544,
"percent_delta": 0.5489,
"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": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6456,
"after": 1.0,
"delta": 0.3544,
"percent_delta": 0.5489,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1856,
"after": 0.167,
"delta": -0.0186,
"percent_delta": -0.1002,
"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.2496,
"after": 0.286,
"delta": 0.0364,
"percent_delta": 0.1458,
"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.2768,
"after": 0.167,
"delta": -0.1098,
"percent_delta": -0.3967,
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2496,
"after": 0.286,
"delta": 0.0364,
"percent_delta": 0.1458,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2768,
"after": 0.167,
"delta": -0.1098,
"percent_delta": -0.3967,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 0.0,
"delta": -2.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": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.1856,
"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.2496,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2768,
"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.167,
"after": 0.1856,
"delta": 0.0186,
"percent_delta": 0.1114,
"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.286,
"after": 0.2496,
"delta": -0.0364,
"percent_delta": -0.1272,
"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.167,
"after": 0.2768,
"delta": 0.1098,
"percent_delta": 0.6577,
"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.167,
"after": 0.2768,
"delta": 0.1098,
"percent_delta": 0.6577,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2496,
"delta": -0.0364,
"percent_delta": -0.1272,
"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.197,
"after": 3.0,
"delta": -0.197,
"percent_delta": -0.0616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.1856,
"delta": -0.0554,
"percent_delta": -0.2299,
"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.64,
"after": 0.0,
"delta": -0.64,
"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.298,
"after": 0.2496,
"delta": -0.0484,
"percent_delta": -0.1624,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.402,
"after": 0.0,
"delta": -0.402,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.33,
"after": 0.2768,
"delta": -0.0532,
"percent_delta": -0.1612,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.085,
"after": 0.0,
"delta": -1.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 0,
"deboosted_metrics": 11,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.085,
"after": 0.0,
"delta": -1.085,
"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.154 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.197 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.308 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.298 | - |
| predicted_R | 0.402 | - |
| predicted_RBI | 0.210 | - |
| predicted_SLG | 0.330 | - |
| predicted_SO | 1.085 | - |
Final model 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.242 | 0.088 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.812 | 2.615 |
| predicted_AVG | 0.217 | -0.024 |
| predicted_BB | 0.501 | 0.193 |
| predicted_H | 1.102 | 0.462 |
| predicted_HBP | 0.134 | - |
| predicted_HR | 0.098 | 0.038 |
| predicted_OBP | 0.279 | -0.019 |
| predicted_R | 0.669 | 0.267 |
| predicted_RBI | 0.241 | 0.031 |
| predicted_SLG | 0.305 | -0.025 |
| predicted_SO | 2.060 | 0.975 |
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.242 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.812 | 0.000 |
| predicted_AVG | 0.186 | -0.031 |
| predicted_BB | 0.496 | -0.005 |
| predicted_H | 1.079 | -0.023 |
| predicted_HBP | 0.134 | 0.000 |
| predicted_HR | 0.095 | -0.003 |
| predicted_OBP | 0.250 | -0.030 |
| predicted_R | 0.646 | -0.024 |
| predicted_RBI | 0.233 | -0.008 |
| predicted_SLG | 0.277 | -0.028 |
| predicted_SO | 2.082 | 0.022 |
AB rounded to 6 (raw=5.81), rates preserved: AVG=0.186 HR/AB=0.016
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.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 | 6.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 | 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.242 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 6.000 | 0.188 |
| predicted_AVG | 0.167 | -0.019 |
| predicted_BB | 1.000 | 0.504 |
| predicted_H | 1.000 | -0.079 |
| predicted_HR | 0.000 | -0.095 |
| predicted_OBP | 0.286 | 0.036 |
| predicted_R | 1.000 | 0.354 |
| predicted_RBI | 0.000 | -0.233 |
| predicted_SLG | 0.167 | -0.110 |
| predicted_SO | 2.000 | -0.082 |
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 | -3.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 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.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 | 3 | - | 19.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 9.000 | 0.1053 | 0.1053 | 0.1053 | 0.1053 | 0.0000 | 0.0000 | 0.0000 | 0.4737 |
| last_10 | 0.20 | 4 | - | 35.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 4.000 | 19.000 | 0.0571 | 0.1538 | 0.0571 | 0.0571 | 0.0000 | 0.0000 | 0.1143 | 0.5429 |
| season | 0.60 | 36 | - | 374.000 | 76.000 | 18.000 | 0.000 | 7.000 | 11.000 | 47.000 | 36.000 | 127.000 | 0.2032 | 0.2854 | 0.3075 | 0.2032 | 0.0187 | 0.0294 | 0.0963 | 0.3396 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3590 |
| predicted_3B | 0.0020 |
| predicted_AB | 9.2730 |
| predicted_AVG | 0.1848 |
| predicted_BB | 0.7570 |
| predicted_H | 1.7130 |
| predicted_HBP | 0.1340 |
| predicted_HR | 0.1490 |
| predicted_OBP | 0.2543 |
| predicted_R | 1.0230 |
| predicted_RBI | 0.2820 |
| predicted_SLG | 0.2722 |
| predicted_SO | 3.3510 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1540 | 0.3590 | 0.2422 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.1970 | 9.2730 | 5.8119 | model_form_blend |
| predicted_AVG | 0.2410 | 0.1848 | 0.2168 | model_form_blend |
| predicted_BB | 0.3080 | 0.7570 | 0.5012 | model_form_blend |
| predicted_H | 0.6400 | 1.7130 | 1.1018 | model_form_blend |
| predicted_HBP | - | 0.1340 | 0.1340 | form_only |
| predicted_HR | 0.0600 | 0.1490 | 0.0983 | model_form_blend |
| predicted_OBP | 0.2980 | 0.2543 | 0.2792 | model_form_blend |
| predicted_R | 0.4020 | 1.0230 | 0.6693 | model_form_blend |
| predicted_RBI | 0.2100 | 0.2820 | 0.2410 | model_form_blend |
| predicted_SLG | 0.3300 | 0.2722 | 0.3051 | model_form_blend |
| predicted_SO | 1.0850 | 3.3510 | 2.0602 | 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 | 119 |
| Season rows before report date | 119 |
| Report year | 2026 |
| Profile rows used | 117 |
| 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.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 | 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 | 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 | C |
| gameID | 20260604_BAL@BOS |
| game_type | full |
| mlbID | 665966 |
| playerID | 665966 |
| playerName | Carlos Narváez |
| pos | C |
| started | True |
| startingPosition | C |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-04 |
| sl_k_percent | 30.4 |
| sl_bb_percent | 8.0 |
| sl_woba | 0.276 |
| sl_xwoba | 0.284 |
| sl_xba | 0.223 |
| sl_xslg | 0.334 |
| sl_sweet_spot_percent | 38.7 |
| sl_barrel_batted_rate | 6.7 |
| sl_hard_hit_percent | 37.3 |
| sl_exit_velocity_avg | 91.5 |
| sl_launch_angle_avg | 14.3 |
| sl_whiff_percent | 28.8 |
| sl_swing_percent | 52.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 | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.917 | 1.000 | -0.917 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.000 | 4.000 | -1.000 | -3.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 4.583 | 6.000 | -1.583 | -3.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.392 | 5.100 | 0.608 | 0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 5.250 | 6.000 | -4.250 | -5.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": "813349",
"player_name": "Connelly Early",
"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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 6.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": 1.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 6.0,
"predicted_R": 1.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": 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": 6.0,
"after": 6.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": 1.0,
"after": 1.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": 6.0,
"after": 6.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 | 1.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 6.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 | 30.200 | 9.000 | 25.000 | 6.000 | 32.000 | 6.000 | 2.6413 | 1.0109 | 0.2935 | 0.8152 | 0.1956 | 1.0435 | 0.1956 |
| last_10 | 0.35 | 10 | 57.000 | 21.000 | 47.000 | 17.000 | 53.000 | 11.000 | 3.3158 | 1.1228 | 0.3684 | 0.8246 | 0.2983 | 0.9298 | 0.1930 |
| season | 0.20 | 12 | 66.100 | 24.000 | 55.000 | 23.000 | 63.000 | 11.000 | 3.2563 | 1.1759 | 0.3618 | 0.8292 | 0.3467 | 0.9497 | 0.1658 |
| Metric | Value |
|---|---|
| predicted_BB | 1.7140 |
| predicted_ER | 2.2190 |
| predicted_ERA | 3.4012 |
| predicted_H | 5.0570 |
| predicted_HR | 1.0230 |
| predicted_IP | 6.0000 |
| predicted_SO | 5.6950 |
| predicted_WHIP | 1.1533 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.7140 | 1.3754 | model_form_blend |
| predicted_ER | 1.0000 | 2.2190 | 1.6409 | model_form_blend |
| predicted_ERA | - | 3.4012 | 3.4012 | form_only |
| predicted_H | 3.0000 | 5.0570 | 4.0815 | model_form_blend |
| predicted_HR | 1.0000 | 1.0230 | 1.0121 | model_form_blend |
| predicted_IP | 6.0000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 1.0000 | 5.6950 | 3.4684 | model_form_blend |
| predicted_WHIP | - | 1.1533 | 1.1533 | 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 | 6.0 |
| H | 3 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 1 |
| HR | 1 |
| BF | 23 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 23 |
| Pitching_ER | 4 |
| Pitching_ERA | 3.26 |
| Pitching_Flyouts | 5 |
| Pitching_Groundouts | 5 |
| Pitching_H | 6 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.1 |
| Pitching_Pitches | 96 |
| Pitching_R | 4 |
| Pitching_SO | 6 |
| Pitching_Strikes | 64 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260602_BAL@BOS |
| game_type | full |
| mlbID | 813349 |
| playerID | 813349 |
| playerName | Connelly Early |
| pos | P |
| started | True |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-02 |
| sl_k_percent | 22.7 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.309 |
| sl_xwoba | 0.337 |
| sl_sweet_spot_percent | 37.1 |
| sl_barrel_batted_rate | 12.4 |
| sl_hard_hit_percent | 43.5 |
| sl_whiff_percent | 22.4 |
| sl_swing_percent | 47.0 |
| sl_avg_best_speed | 80.704200879 |
| sl_avg_hyper_speed | 94.837208022 |
| 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 | 2.000 | -0.450 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.050 | 0.000 | -0.050 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.450 | 0.000 | 1.550 | 2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.960 | 1.000 | 0.040 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.300 | 1.000 | -0.300 | 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": "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": 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": 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": 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": 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": 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": 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 | 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 | 5.000 | 0.000 | 2.000 | 4.000 | 5.000 | 0.000 | 0.0000 | 1.2000 | 0.0000 | 0.4000 | 0.8000 | 1.0000 | 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 | 20 | 19.200 | 1.000 | 9.000 | 9.000 | 26.000 | 0.000 | 0.4576 | 0.9153 | 0.0508 | 0.4576 | 0.4576 | 1.3220 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4940 |
| predicted_ER | 0.2770 |
| predicted_ERA | 2.4957 |
| predicted_H | 0.7030 |
| predicted_HR | 0.0780 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0680 |
| predicted_WHIP | 1.1978 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4940 | 0.2036 | model_form_blend |
| predicted_ER | 0.0000 | 0.2770 | 0.1142 | model_form_blend |
| predicted_ERA | - | 2.4957 | 2.4957 | form_only |
| predicted_H | 2.0000 | 0.7030 | 1.4654 | model_form_blend |
| predicted_HR | 0.0000 | 0.0780 | 0.0322 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0680 | 1.0280 | model_form_blend |
| predicted_WHIP | - | 1.1978 | 1.1978 | 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 | 1.0 |
| H | 2 |
| R | 0 |
| ER | 0 |
| 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 | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.46 |
| 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 | 16 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260605_BOS@NYY |
| game_type | full |
| mlbID | 547973 |
| playerID | 547973 |
| playerName | Aroldis Chapman |
| pos | P |
| started | False |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-05 |
| sl_k_percent | 33.8 |
| sl_bb_percent | 11.7 |
| sl_woba | 0.216 |
| sl_xwoba | 0.274 |
| sl_sweet_spot_percent | 19.5 |
| sl_barrel_batted_rate | 12.2 |
| sl_hard_hit_percent | 43.9 |
| sl_whiff_percent | 32.9 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 75.7984665 |
| sl_avg_hyper_speed | 95.6961645 |
| 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.308 | 0.000 | 0.692 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.423 | 0.000 | -0.423 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.962 | 0.000 | -0.962 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.800 | 1.200 | 0.200 | -0.200 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.962 | 3.000 | 0.038 | -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": "669711",
"player_name": "Greg Weissert",
"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": 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": 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": 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": 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": 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 | 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 | 5.200 | 2.000 | 4.000 | 2.000 | 6.000 | 1.000 | 3.1765 | 1.0588 | 0.3529 | 0.7059 | 0.3529 | 1.0588 | 0.1765 |
| last_10 | 0.35 | 10 | 11.100 | 2.000 | 6.000 | 3.000 | 7.000 | 1.000 | 1.5882 | 0.7941 | 0.1765 | 0.5294 | 0.2647 | 0.6177 | 0.0882 |
| season | 0.20 | 25 | 25.000 | 10.000 | 23.000 | 7.000 | 25.000 | 5.000 | 3.6000 | 1.2000 | 0.4000 | 0.9200 | 0.2800 | 1.0000 | 0.2000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3360 |
| predicted_ER | 0.3930 |
| predicted_ERA | 3.5397 |
| predicted_H | 0.8230 |
| predicted_HR | 0.1450 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9140 |
| predicted_WHIP | 1.1592 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3360 | 0.7096 | model_form_blend |
| predicted_ER | 0.0000 | 0.3930 | 0.1719 | model_form_blend |
| predicted_ERA | - | 3.5397 | 3.5397 | form_only |
| predicted_H | 0.0000 | 0.8230 | 0.3600 | model_form_blend |
| predicted_HR | 0.0000 | 0.1450 | 0.0634 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9140 | 0.9624 | model_form_blend |
| predicted_WHIP | - | 1.1592 | 1.1592 | 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.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 1 |
| 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 | 3.96 |
| 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.2 |
| Pitching_Pitches | 25 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260602_BAL@BOS |
| game_type | full |
| mlbID | 669711 |
| playerID | 669711 |
| playerName | Greg Weissert |
| pos | P |
| started | False |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-02 |
| sl_k_percent | 23.1 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.331 |
| sl_xwoba | 0.292 |
| sl_sweet_spot_percent | 28.8 |
| sl_barrel_batted_rate | 5.5 |
| sl_hard_hit_percent | 31.5 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 46.6 |
| sl_avg_best_speed | 75.826406667 |
| sl_avg_hyper_speed | 93.137561667 |
| 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.385 | 1.000 | -0.385 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.615 | 4.000 | -0.615 | -4.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.923 | 3.000 | -0.923 | -3.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.754 | 0.200 | 0.246 | 0.800 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.231 | 2.000 | -0.231 | -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": 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 | 8.000 | 8.000 | 3.000 | 7.000 | 3.000 | 15.4286 | 2.3571 | 1.7143 | 1.7143 | 0.6429 | 1.5000 | 0.6429 |
| last_10 | 0.35 | 10 | 9.100 | 8.000 | 11.000 | 3.000 | 12.000 | 3.000 | 7.7143 | 1.5000 | 0.8571 | 1.1786 | 0.3214 | 1.2857 | 0.3214 |
| season | 0.20 | 13 | 11.200 | 8.000 | 12.000 | 5.000 | 16.000 | 3.000 | 6.1714 | 1.4571 | 0.6857 | 1.0286 | 0.4286 | 1.3714 | 0.2571 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4030 |
| predicted_ER | 0.7130 |
| predicted_ERA | 6.4178 |
| predicted_H | 1.0940 |
| predicted_HR | 0.2380 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0810 |
| predicted_WHIP | 1.4971 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4030 | 0.1454 | model_form_blend |
| predicted_ER | 0.0000 | 0.7130 | 0.2572 | model_form_blend |
| predicted_ERA | - | 6.4178 | 6.4178 | form_only |
| predicted_H | 0.0000 | 1.0940 | 0.3947 | model_form_blend |
| predicted_HR | 0.0000 | 0.2380 | 0.0859 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0810 | 1.0292 | model_form_blend |
| predicted_WHIP | - | 1.4971 | 1.4971 | 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 | 0 |
| SO | 1 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 4 |
| Pitching_ERA | 6.17 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 25 |
| Pitching_R | 4 |
| Pitching_SO | 2 |
| Pitching_Strikes | 16 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 686580 |
| playerID | 686580 |
| playerName | Justin Slaten |
| pos | P |
| started | False |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-07 |
| sl_k_percent | 30.8 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.349 |
| sl_xwoba | 0.299 |
| sl_sweet_spot_percent | 38.7 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 41.9 |
| sl_whiff_percent | 28.3 |
| sl_swing_percent | 49.5 |
| sl_avg_best_speed | 77.26890375 |
| sl_avg_hyper_speed | 94.125145161 |
| Field | Value |
|---|---|
| Pitcher | Ian Seymour |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.0138 |
| ESPN Rank | 573 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2032 |
| Avg Velo | 86.0811 |
| Avg Spin | 1950.0419 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 3 |
| Pre H | 6 |
| Pre BB | 1 |
| Pre SO | 2 |
| Season ERA | 3.7742 |
| Season WHIP | 1.1935 |
| Role Avg IP | 2 |
| Recent Avg IP | 2 |
| Last Start IP | 2 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"opponent": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"edges": {
"quality_edge": 0.144,
"offense_edge": -0.0418,
"opponent_offense_edge": -0.1554,
"defense_strength": 0.0333,
"opponent_defense_weakness": -0.088,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.013,
"run_prevention": 0.9646,
"strikeout": 1.0168
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "693855",
"profile": {
"available": true,
"pitcher_id": "693855",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 110.0,
"k_percent": 24.6,
"bb_percent": 11.2,
"woba": 0.318,
"xwoba": 0.312,
"sweet_spot_percent": 38.8,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 36.5,
"avg_best_speed": 78.2851,
"avg_hyper_speed": 93.5258,
"whiff_percent": 29.3,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1395,
"command_and_miss": 0.1793,
"regression_edge": 0.1714,
"xwoba_edge": 0.0714,
"barrel_edge": -0.5111,
"hard_hit_edge": 0.3,
"whiff_edge": 0.5,
"bb_edge": -0.525,
"pitch_design_score": -0.2032
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "693855",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 26,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 26,
"pitch_usage": 0.0,
"release_speed": 86.08107507049887,
"release_spin_rate": 1950.04193432647,
"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": 26,
"pitch_usage": 0.0,
"release_speed": 86.08107507049887,
"release_spin_rate": 1950.04193432647,
"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.0811,
"release_spin_rate": 1950.0419,
"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.2032,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4517,
"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.0138,
"sample_weight": 0.45,
"run_prevention_factor": 1.0012,
"strikeout_factor": 1.0134,
"walk_factor": 1.0189,
"homer_factor": 1.012,
"woba_minus_xwoba": 0.006,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "693855",
"espn_id": 4669425,
"player_name": "Ian Seymour",
"team": "TB",
"role": "pitcher",
"espn_rank": 573,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 573,
"gp_value": 26.0,
"gp_rank": 74,
"gs_value": 1.0,
"gs_rank": 229,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.2258,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 2.0,
"sv_rank": 51,
"hld_value": 10.0,
"hld_rank": 16,
"ip_value": 31.0,
"ip_rank": 186,
"h_value": 27.0,
"h_rank": 198,
"er_value": 18.0,
"er_rank": 149,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 33.0,
"k_rank": 181,
"k_per_9_value": 9.580646,
"k_per_9_rank": 26,
"whip_value": 1.3548,
"whip_rank": null,
"war_value": -0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0005,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.0005,
"adjusted": 5
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0085,
"adjusted": 0
},
"predicted_HR": {
"original": 2.0,
"factor": 1.0054,
"adjusted": 2
},
"predicted_SO": {
"original": 5.0,
"factor": 1.006,
"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": 13.1,
"ER": 8,
"H": 10,
"BB": 8,
"SO": 13,
"HR": 3,
"ERA": 5.3999999999999995,
"WHIP": 1.3499999999999999,
"K9": 8.774999999999999,
"HR9": 2.0249999999999995,
"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-02T00:00:00"
}{
"available": true,
"pitcher_id": "693855",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 26,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 26,
"pitch_usage": 0.0,
"release_speed": 86.08107507049887,
"release_spin_rate": 1950.04193432647,
"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": 26,
"pitch_usage": 0.0,
"release_speed": 86.08107507049887,
"release_spin_rate": 1950.04193432647,
"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.0811,
"release_spin_rate": 1950.0419,
"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.2032,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4517,
"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.121,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5504,
"prior_weight": 0.4496
},
"role": "pitcher",
"player_id": "693855",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 7.2,
"ER": 5.0,
"R": 7.0,
"H": 6.0,
"BB": 7.0,
"SO": 6.0,
"HR": 1.0,
"BF": 36.0,
"Pitches": 131.0
},
"per_game": {
"IP": 1.2,
"ER": 1.0,
"R": 1.4,
"H": 1.2,
"BB": 1.4,
"SO": 1.2,
"HR": 0.2,
"BF": 7.2,
"Pitches": 26.2
},
"rates": {
"ERA": 5.8696,
"WHIP": 1.6957,
"ER_per_IP": 0.65217,
"H_per_IP": 0.78261,
"BB_per_IP": 0.91304,
"SO_per_IP": 0.78261,
"HR_per_IP": 0.13043
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.1,
"ER": 8.0,
"R": 10.0,
"H": 10.0,
"BB": 8.0,
"SO": 13.0,
"HR": 3.0,
"BF": 58.0,
"Pitches": 209.0
},
"per_game": {
"IP": 1.1,
"ER": 0.8,
"R": 1.0,
"H": 1.0,
"BB": 0.8,
"SO": 1.3,
"HR": 0.3,
"BF": 5.8,
"Pitches": 20.9
},
"rates": {
"ERA": 5.4,
"WHIP": 1.35,
"ER_per_IP": 0.6,
"H_per_IP": 0.75,
"BB_per_IP": 0.6,
"SO_per_IP": 0.975,
"HR_per_IP": 0.225
}
},
"season": {
"games": 25,
"totals": {
"IP": 31.0,
"ER": 13.0,
"R": 15.0,
"H": 22.0,
"BB": 15.0,
"SO": 33.0,
"HR": 4.0,
"BF": 129.0,
"Pitches": 482.0
},
"per_game": {
"IP": 1.1,
"ER": 0.52,
"R": 0.6,
"H": 0.88,
"BB": 0.6,
"SO": 1.32,
"HR": 0.16,
"BF": 5.16,
"Pitches": 19.28
},
"rates": {
"ERA": 3.7742,
"WHIP": 1.1935,
"ER_per_IP": 0.41935,
"H_per_IP": 0.70968,
"BB_per_IP": 0.48387,
"SO_per_IP": 1.06452,
"HR_per_IP": 0.12903
}
}
},
"weighted_prediction": {
"predicted_IP": 3.0,
"predicted_ER": 1.659,
"predicted_H": 2.595,
"predicted_BB": 1.713,
"predicted_SO": 2.816,
"predicted_HR": 0.467,
"predicted_ERA": 4.8713,
"predicted_WHIP": 1.4058
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.54,
"form_weight": 0.46,
"form_reliability": 0.5504,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.121,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5504,
"prior_weight": 0.4496
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 3.0,
"final": 4.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 3.0,
"form": 1.659,
"final": 2.3831,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 2.595,
"final": 4.4336,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.713,
"final": 1.328,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 2.816,
"final": 2.3754,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.467,
"final": 0.7548,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.8713,
"final": 4.8713,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4058,
"final": 1.4058,
"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 | Bryan Baker |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3206 |
| ESPN Rank | 114 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0698 |
| Avg Velo | 90.9571 |
| Avg Spin | 2116.8977 |
| 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 | 2.1316 |
| Season WHIP | 1.0263 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"opponent": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"edges": {
"quality_edge": 0.144,
"offense_edge": -0.0418,
"opponent_offense_edge": -0.1554,
"defense_strength": 0.0333,
"opponent_defense_weakness": -0.088,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.013,
"run_prevention": 0.9646,
"strikeout": 1.0168
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "641329",
"profile": {
"available": true,
"pitcher_id": "641329",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 89.0,
"k_percent": 28.4,
"bb_percent": 10.8,
"woba": 0.241,
"xwoba": 0.268,
"sweet_spot_percent": 33.9,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 30.6,
"avg_best_speed": 73.8692,
"avg_hyper_speed": 92.8562,
"whiff_percent": 34.3,
"swing_percent": 51.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.0782,
"command_and_miss": 0.6936,
"regression_edge": -0.7714,
"xwoba_edge": 1.3286,
"barrel_edge": 0.1333,
"hard_hit_edge": 1.1429,
"whiff_edge": 1.2143,
"bb_edge": -0.425,
"pitch_design_score": 0.0698
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "641329",
"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": 90.95709400589595,
"release_spin_rate": 2116.8977373037465,
"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": 90.95709400589595,
"release_spin_rate": 2116.8977373037465,
"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.9571,
"release_spin_rate": 2116.8977,
"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.0698,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4988,
"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.3206,
"sample_weight": 0.45,
"run_prevention_factor": 0.9727,
"strikeout_factor": 1.036,
"walk_factor": 1.0153,
"homer_factor": 0.9567,
"woba_minus_xwoba": -0.027,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641329",
"espn_id": 40884,
"player_name": "Bryan Baker",
"team": "TB",
"role": "pitcher",
"espn_rank": 114,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 114,
"gp_value": 27.0,
"gp_rank": 62,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.1315,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 16.0,
"sv_rank": 4,
"hld_value": 1.0,
"hld_rank": 189,
"ip_value": 25.1,
"ip_rank": 276,
"h_value": 15.0,
"h_rank": 376,
"er_value": 6.0,
"er_rank": 425,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 11.0,
"bb_rank": 236,
"k_value": 29.0,
"k_rank": 218,
"k_per_9_value": 10.302631,
"k_per_9_rank": 21,
"whip_value": 1.0263,
"whip_rank": null,
"war_value": 0.85,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9877,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9877,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0069,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9805,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0162,
"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": 5,
"BB": 7,
"SO": 12,
"HR": 0,
"ERA": 1.8620689655172415,
"WHIP": 1.2413793103448276,
"K9": 11.172413793103448,
"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-02T00:00:00"
}{
"available": true,
"pitcher_id": "641329",
"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": 90.95709400589595,
"release_spin_rate": 2116.8977373037465,
"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": 90.95709400589595,
"release_spin_rate": 2116.8977373037465,
"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.9571,
"release_spin_rate": 2116.8977,
"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.0698,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4988,
"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.002,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5001,
"prior_weight": 0.4999
},
"role": "pitcher",
"player_id": "641329",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 3.0,
"SO": 5.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 86.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 4.0,
"Pitches": 17.2
},
"rates": {
"ERA": 0.0,
"WHIP": 1.0,
"ER_per_IP": 0.0,
"H_per_IP": 0.4,
"BB_per_IP": 0.6,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 7.0,
"SO": 12.0,
"HR": 0.0,
"BF": 41.0,
"Pitches": 162.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.5,
"BB": 0.7,
"SO": 1.2,
"HR": 0.0,
"BF": 4.1,
"Pitches": 16.2
},
"rates": {
"ERA": 1.8621,
"WHIP": 1.2414,
"ER_per_IP": 0.2069,
"H_per_IP": 0.51724,
"BB_per_IP": 0.72414,
"SO_per_IP": 1.24138,
"HR_per_IP": 0.0
}
},
"season": {
"games": 27,
"totals": {
"IP": 25.1,
"ER": 6.0,
"R": 6.0,
"H": 15.0,
"BB": 11.0,
"SO": 29.0,
"HR": 1.0,
"BF": 102.0,
"Pitches": 421.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2222,
"R": 0.2222,
"H": 0.5556,
"BB": 0.4074,
"SO": 1.0741,
"HR": 0.037,
"BF": 3.7778,
"Pitches": 15.5926
},
"rates": {
"ERA": 2.1316,
"WHIP": 1.0263,
"ER_per_IP": 0.23684,
"H_per_IP": 0.59211,
"BB_per_IP": 0.43421,
"SO_per_IP": 1.14474,
"HR_per_IP": 0.03947
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.302,
"predicted_H": 0.718,
"predicted_BB": 0.487,
"predicted_SO": 1.024,
"predicted_HR": 0.074,
"predicted_ERA": 2.7204,
"predicted_WHIP": 1.2058
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5612,
"form_weight": 0.4388,
"form_reliability": 0.5001,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.002,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5001,
"prior_weight": 0.4999
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.302,
"final": 0.1325,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.718,
"final": 0.3151,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.487,
"final": 0.2137,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.024,
"final": 0.4493,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.074,
"final": 0.0325,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.7204,
"final": 2.7204,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2058,
"final": 1.2058,
"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 Cleavinger |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1002 |
| ESPN Rank | 459 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0349 |
| Avg Velo | 89.0864 |
| Avg Spin | 2548.5208 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 4.7250 |
| Season WHIP | 1.5000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"opponent": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"edges": {
"quality_edge": 0.144,
"offense_edge": -0.0418,
"opponent_offense_edge": -0.1554,
"defense_strength": 0.0333,
"opponent_defense_weakness": -0.088,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.013,
"run_prevention": 0.9646,
"strikeout": 1.0168
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "664076",
"profile": {
"available": true,
"pitcher_id": "664076",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 47.0,
"k_percent": 31.7,
"bb_percent": 13.3,
"woba": 0.329,
"xwoba": 0.291,
"sweet_spot_percent": 40.6,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 46.9,
"avg_best_speed": 76.7562,
"avg_hyper_speed": 94.3397,
"whiff_percent": 27.1,
"swing_percent": 46.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.0136,
"command_and_miss": 0.4207,
"regression_edge": 1.0857,
"xwoba_edge": 0.6714,
"barrel_edge": 0.1778,
"hard_hit_edge": -1.1857,
"whiff_edge": 0.1857,
"bb_edge": -1.05,
"pitch_design_score": -0.0349
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "664076",
"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": 89.08640448916356,
"release_spin_rate": 2548.520781808771,
"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": 89.08640448916356,
"release_spin_rate": 2548.520781808771,
"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.0864,
"release_spin_rate": 2548.5208,
"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.0349,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2495,
"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.1002,
"sample_weight": 0.45,
"run_prevention_factor": 0.9915,
"strikeout_factor": 1.026,
"walk_factor": 1.0378,
"homer_factor": 1.0059,
"woba_minus_xwoba": 0.038,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "664076",
"espn_id": 36429,
"player_name": "Garrett Cleavinger",
"team": "TB",
"role": "pitcher",
"espn_rank": 459,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 459,
"gp_value": 15.0,
"gp_rank": 210,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.725,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 13.1,
"ip_rank": 426,
"h_value": 12.0,
"h_rank": 423,
"er_value": 7.0,
"er_rank": 383,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 8.0,
"bb_rank": 324,
"k_value": 19.0,
"k_rank": 333,
"k_per_9_value": 12.825001,
"k_per_9_rank": 21,
"whip_value": 1.5,
"whip_rank": null,
"war_value": -0.09,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9962,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9962,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.017,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0027,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0117,
"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": 5,
"H": 8,
"BB": 4,
"SO": 14,
"HR": 1,
"ERA": 4.655172413793104,
"WHIP": 1.2413793103448276,
"K9": 13.03448275862069,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "664076",
"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": 89.08640448916356,
"release_spin_rate": 2548.520781808771,
"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": 89.08640448916356,
"release_spin_rate": 2548.520781808771,
"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.0864,
"release_spin_rate": 2548.5208,
"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.0349,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2495,
"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.633,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3449,
"prior_weight": 0.6551
},
"role": "pitcher",
"player_id": "664076",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 15,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 3.0,
"SO": 7.0,
"HR": 0.0,
"BF": 23.0,
"Pitches": 91.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.8,
"BB": 0.6,
"SO": 1.4,
"HR": 0.0,
"BF": 4.6,
"Pitches": 18.2
},
"rates": {
"ERA": 5.0625,
"WHIP": 1.3125,
"ER_per_IP": 0.5625,
"H_per_IP": 0.75,
"BB_per_IP": 0.5625,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 5.0,
"R": 6.0,
"H": 8.0,
"BB": 4.0,
"SO": 14.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 164.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.6,
"H": 0.8,
"BB": 0.4,
"SO": 1.4,
"HR": 0.1,
"BF": 4.1,
"Pitches": 16.4
},
"rates": {
"ERA": 4.6552,
"WHIP": 1.2414,
"ER_per_IP": 0.51724,
"H_per_IP": 0.82759,
"BB_per_IP": 0.41379,
"SO_per_IP": 1.44828,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 15,
"totals": {
"IP": 13.1,
"ER": 7.0,
"R": 8.0,
"H": 12.0,
"BB": 8.0,
"SO": 19.0,
"HR": 1.0,
"BF": 60.0,
"Pitches": 229.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4667,
"R": 0.5333,
"H": 0.8,
"BB": 0.5333,
"SO": 1.2667,
"HR": 0.0667,
"BF": 4.0,
"Pitches": 15.2667
},
"rates": {
"ERA": 4.725,
"WHIP": 1.5,
"ER_per_IP": 0.525,
"H_per_IP": 0.9,
"BB_per_IP": 0.6,
"SO_per_IP": 1.425,
"HR_per_IP": 0.075
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.504,
"predicted_H": 0.906,
"predicted_BB": 0.417,
"predicted_SO": 1.089,
"predicted_HR": 0.109,
"predicted_ERA": 4.5321,
"predicted_WHIP": 1.323
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6268,
"form_weight": 0.3732,
"form_reliability": 0.3449,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.633,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3449,
"prior_weight": 0.6551
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.504,
"final": 0.1881,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.906,
"final": 0.3381,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.417,
"final": 0.1556,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.089,
"final": 1.0332,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.109,
"final": 0.0407,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.5321,
"final": 4.5321,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.323,
"final": 1.323,
"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 | Kevin Kelly |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0260 |
| ESPN Rank | 124 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0428 |
| Avg Velo | 88.9454 |
| Avg Spin | 2044.0888 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.5714 |
| Season WHIP | 0.8571 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TB",
"games": 70,
"wins": 40,
"losses": 30,
"win_pct": 0.5714,
"runs_scored": 300.0,
"runs_allowed": 303.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0429,
"avg_runs_scored": 4.2857,
"avg_runs_allowed": 4.3286,
"offense_index": 0.9582,
"defense_index": 1.0333,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.9,
"avg_runs_allowed": 6.5,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.0146
},
"opponent": {
"team": "BOS",
"games": 72,
"wins": 29,
"losses": 43,
"win_pct": 0.4028,
"runs_scored": 272.0,
"runs_allowed": 296.0,
"run_differential": -24.0,
"run_differential_per_game": -0.3333,
"avg_runs_scored": 3.7778,
"avg_runs_allowed": 4.1111,
"offense_index": 0.8446,
"defense_index": 1.088,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 4.1,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.1586
},
"edges": {
"quality_edge": 0.144,
"offense_edge": -0.0418,
"opponent_offense_edge": -0.1554,
"defense_strength": 0.0333,
"opponent_defense_weakness": -0.088,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.013,
"run_prevention": 0.9646,
"strikeout": 1.0168
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "687330",
"profile": {
"available": true,
"pitcher_id": "687330",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 86.0,
"k_percent": 20.4,
"bb_percent": 5.8,
"woba": 0.226,
"xwoba": 0.298,
"sweet_spot_percent": 29.3,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 44.0,
"avg_best_speed": 79.9815,
"avg_hyper_speed": 94.7604,
"whiff_percent": 19.1,
"swing_percent": 47.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.4137,
"command_and_miss": -0.3307,
"regression_edge": -2.0,
"xwoba_edge": 0.4714,
"barrel_edge": -0.2444,
"hard_hit_edge": -0.7714,
"whiff_edge": -0.9571,
"bb_edge": 0.825,
"pitch_design_score": -0.0428
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "687330",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 88.94537534331532,
"release_spin_rate": 2044.08881620329,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 88.94537534331532,
"release_spin_rate": 2044.08881620329,
"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.9454,
"release_spin_rate": 2044.0888,
"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.0428,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3059,
"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.026,
"sample_weight": 0.45,
"run_prevention_factor": 1.0022,
"strikeout_factor": 0.9763,
"walk_factor": 0.9703,
"homer_factor": 1.0163,
"woba_minus_xwoba": -0.072,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "687330",
"espn_id": 5001153,
"player_name": "Kevin Kelly",
"team": "TB",
"role": "pitcher",
"espn_rank": 124,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 124,
"gp_value": 27.0,
"gp_rank": 62,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.5714,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 2.0,
"sv_rank": 51,
"hld_value": 12.0,
"hld_rank": 6,
"ip_value": 28.0,
"ip_rank": 230,
"h_value": 18.0,
"h_rank": 323,
"er_value": 8.0,
"er_rank": 349,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 6.0,
"bb_rank": 402,
"k_value": 21.0,
"k_rank": 310,
"k_per_9_value": 6.75,
"k_per_9_rank": 36,
"whip_value": 0.8571,
"whip_rank": null,
"war_value": 0.76,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.001,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.001,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9866,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0073,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9893,
"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": 8,
"BB": 2,
"SO": 7,
"HR": 1,
"ERA": 1.8000000000000003,
"WHIP": 1.0000000000000002,
"K9": 6.300000000000001,
"HR9": 0.9000000000000001,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "687330",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 88.94537534331532,
"release_spin_rate": 2044.08881620329,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 88.94537534331532,
"release_spin_rate": 2044.08881620329,
"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.9454,
"release_spin_rate": 2044.0888,
"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.0428,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3059,
"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.529,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5251,
"prior_weight": 0.4749
},
"role": "pitcher",
"player_id": "687330",
"report_date": "20260608_B",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 2.0,
"SO": 4.0,
"HR": 1.0,
"BF": 20.0,
"Pitches": 73.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.4,
"SO": 0.8,
"HR": 0.2,
"BF": 4.0,
"Pitches": 14.6
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.5,
"ER_per_IP": 0.42857,
"H_per_IP": 1.07143,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 2.0,
"R": 2.0,
"H": 8.0,
"BB": 2.0,
"SO": 7.0,
"HR": 1.0,
"BF": 35.0,
"Pitches": 136.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.2,
"SO": 0.7,
"HR": 0.1,
"BF": 3.5,
"Pitches": 13.6
},
"rates": {
"ERA": 1.8,
"WHIP": 1.0,
"ER_per_IP": 0.2,
"H_per_IP": 0.8,
"BB_per_IP": 0.2,
"SO_per_IP": 0.7,
"HR_per_IP": 0.1
}
},
"season": {
"games": 27,
"totals": {
"IP": 28.0,
"ER": 8.0,
"R": 10.0,
"H": 18.0,
"BB": 6.0,
"SO": 21.0,
"HR": 2.0,
"BF": 103.0,
"Pitches": 400.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2963,
"R": 0.3704,
"H": 0.6667,
"BB": 0.2222,
"SO": 0.7778,
"HR": 0.0741,
"BF": 3.8148,
"Pitches": 14.8148
},
"rates": {
"ERA": 2.5714,
"WHIP": 0.8571,
"ER_per_IP": 0.28571,
"H_per_IP": 0.64286,
"BB_per_IP": 0.21429,
"SO_per_IP": 0.75,
"HR_per_IP": 0.07143
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.398,
"predicted_H": 0.922,
"predicted_BB": 0.334,
"predicted_SO": 0.854,
"predicted_HR": 0.143,
"predicted_ERA": 3.5845,
"predicted_WHIP": 1.256
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5506,
"form_weight": 0.4494,
"form_reliability": 0.5251,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.529,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5251,
"prior_weight": 0.4749
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.398,
"final": 0.7295,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.922,
"final": 0.965,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.334,
"final": 0.1501,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.854,
"final": 0.9344,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.143,
"final": 0.6149,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5845,
"final": 3.5845,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.256,
"final": 1.256,
"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 | 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 | 4.210 | 4.000 | 7.000 | Hitting_AB | 3.934 | 4.000 | 0.066 | 0.000 |
| predicted_AVG | 0.248 | 0.250 | 0.286 | Hitting_AVG | 0.268 | 0.000 | -0.018 | 0.250 |
| predicted_BB | 0.622 | 0.000 | 1.000 | Hitting_BB | 0.622 | 0.000 | -0.622 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_H | 1.040 | 1.000 | 2.000 | Hitting_H | 1.054 | 0.000 | -0.054 | 1.000 |
| predicted_HR | 0.160 | 1.000 | 0.000 | Hitting_HR | 0.241 | 0.000 | 0.759 | 1.000 |
| predicted_OBP | 0.357 | 0.250 | 0.375 | Hitting_OBP | 0.367 | 0.000 | -0.117 | 0.250 |
| predicted_R | 0.676 | 1.000 | 1.000 | Hitting_R | 0.676 | 0.000 | 0.324 | 1.000 |
| predicted_RBI | 0.430 | 1.000 | 1.000 | Hitting_RBI | 0.539 | 0.000 | 0.461 | 1.000 |
| predicted_SLG | 0.448 | 1.000 | 0.286 | Hitting_SLG | 0.484 | 0.000 | 0.516 | 1.000 |
| predicted_SO | 0.714 | 0.000 | 1.000 | Hitting_SO | 0.714 | 0.000 | -0.714 | 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_HR: 0.1600 -> 1.0000 (boost 0.8400, better) |
| Biggest Deboost | predicted_SO: 0.7140 -> 0.0000 (deboost -0.7140, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.2100 -> 6.9975 (boost 2.7875, 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.4577 -> 0.4406 (deboost -0.0171, 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.6963 -> 1.0000 (boost 0.3037, better) | predicted_2B: 0.3829 -> 0.0000 (deboost -0.3829, worse) | AB rounded to 7 (raw=7.00), rates preserved: AVG=0.264 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2537 -> 1.0000 (deboost -0.2537, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2645 -> 0.2860 (boost 0.0215, better) | predicted_SLG: 0.4406 -> 0.2860 (deboost -0.1546, 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_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4406 (boost 0.1546, better) | predicted_AVG: 0.2860 -> 0.2645 (deboost -0.0215, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691406",
"player_name": "Junior Caminero",
"position": "3B",
"team": "TB",
"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.0,
"predicted_AB": 4.21,
"predicted_AVG": 0.248,
"predicted_BB": 0.622,
"predicted_H": 1.04,
"predicted_HR": 0.16,
"predicted_OBP": 0.357,
"predicted_R": 0.676,
"predicted_RBI": 0.43,
"predicted_SLG": 0.448,
"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.3829,
"predicted_3B": 0.0004,
"predicted_AB": 6.9975,
"predicted_AVG": 0.2607,
"predicted_BB": 1.1032,
"predicted_H": 1.8666,
"predicted_HBP": 0.003,
"predicted_HR": 0.2847,
"predicted_OBP": 0.3651,
"predicted_R": 1.2673,
"predicted_RBI": 0.7038,
"predicted_SLG": 0.4577,
"predicted_SO": 1.2248
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.129,
"after": 0.3829,
"delta": 0.2539,
"percent_delta": 1.9682,
"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.21,
"after": 6.9975,
"delta": 2.7875,
"percent_delta": 0.6621,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2607,
"delta": 0.0127,
"percent_delta": 0.0512,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.622,
"after": 1.1032,
"delta": 0.4812,
"percent_delta": 0.7736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.8666,
"delta": 0.8266,
"percent_delta": 0.7948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2847,
"delta": 0.1247,
"percent_delta": 0.7794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.357,
"after": 0.3651,
"delta": 0.0081,
"percent_delta": 0.0227,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.676,
"after": 1.2673,
"delta": 0.5913,
"percent_delta": 0.8747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.7038,
"delta": 0.2738,
"percent_delta": 0.6367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.448,
"after": 0.4577,
"delta": 0.0097,
"percent_delta": 0.0217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.714,
"after": 1.2248,
"delta": 0.5108,
"percent_delta": 0.7154,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 6.9975,
"delta": 2.7875,
"percent_delta": 0.6621,
"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.3829,
"predicted_3B": 0.0004,
"predicted_AB": 6.9975,
"predicted_AVG": 0.2645,
"predicted_BB": 1.1061,
"predicted_H": 1.8507,
"predicted_HBP": 0.003,
"predicted_HR": 0.2828,
"predicted_OBP": 0.3649,
"predicted_R": 1.2537,
"predicted_RBI": 0.6963,
"predicted_SLG": 0.4406,
"predicted_SO": 1.2216
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3829,
"after": 0.3829,
"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": 6.9975,
"after": 6.9975,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2607,
"after": 0.2645,
"delta": 0.0038,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.1032,
"after": 1.1061,
"delta": 0.0029,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8666,
"after": 1.8507,
"delta": -0.0159,
"percent_delta": -0.0085,
"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.2847,
"after": 0.2828,
"delta": -0.0019,
"percent_delta": -0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3651,
"after": 0.3649,
"delta": -0.0002,
"percent_delta": -0.0005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.2673,
"after": 1.2537,
"delta": -0.0136,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7038,
"after": 0.6963,
"delta": -0.0075,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4577,
"after": 0.4406,
"delta": -0.0171,
"percent_delta": -0.0374,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2248,
"after": 1.2216,
"delta": -0.0032,
"percent_delta": -0.0026,
"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.4577,
"after": 0.4406,
"delta": -0.0171,
"percent_delta": -0.0374,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.00), rates preserved: AVG=0.264 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3829,
"after": 0.0,
"delta": -0.3829,
"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": 6.9975,
"after": 7.0,
"delta": 0.0025,
"percent_delta": 0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.1061,
"after": 1.0,
"delta": -0.1061,
"percent_delta": -0.0959,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8507,
"after": 2.0,
"delta": 0.1493,
"percent_delta": 0.0807,
"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.2828,
"after": 0.0,
"delta": -0.2828,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6963,
"after": 1.0,
"delta": 0.3037,
"percent_delta": 0.4362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2216,
"after": 1.0,
"delta": -0.2216,
"percent_delta": -0.1814,
"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.6963,
"after": 1.0,
"delta": 0.3037,
"percent_delta": 0.4362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3829,
"after": 0.0,
"delta": -0.3829,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 1.2537,
"after": 1.0,
"delta": -0.2537,
"percent_delta": -0.2024,
"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": 1.2537,
"after": 1.0,
"delta": -0.2537,
"percent_delta": -0.2024,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2645,
"after": 0.286,
"delta": 0.0215,
"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_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_OBP",
"before": 0.3649,
"after": 0.375,
"delta": 0.0101,
"percent_delta": 0.0277,
"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.4406,
"after": 0.286,
"delta": -0.1546,
"percent_delta": -0.3509,
"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.2645,
"after": 0.286,
"delta": 0.0215,
"percent_delta": 0.0813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4406,
"after": 0.286,
"delta": -0.1546,
"percent_delta": -0.3509,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 3,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2645,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3649,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4406,
"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.286,
"after": 0.2645,
"delta": -0.0215,
"percent_delta": -0.0752,
"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.375,
"after": 0.3649,
"delta": -0.0101,
"percent_delta": -0.027,
"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.286,
"after": 0.4406,
"delta": 0.1546,
"percent_delta": 0.5405,
"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.286,
"after": 0.4406,
"delta": 0.1546,
"percent_delta": 0.5405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2645,
"delta": -0.0215,
"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.129,
"after": 0.0,
"delta": -0.129,
"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": 4.0,
"delta": -0.21,
"percent_delta": -0.0499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2645,
"delta": 0.0165,
"percent_delta": 0.0665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.622,
"after": 0.0,
"delta": -0.622,
"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.16,
"after": 1.0,
"delta": 0.84,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.357,
"after": 0.3649,
"delta": 0.0079,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.676,
"after": 1.0,
"delta": 0.324,
"percent_delta": 0.4793,
"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.448,
"after": 0.4406,
"delta": -0.0074,
"percent_delta": -0.0165,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.714,
"after": 0.0,
"delta": -0.714,
"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_HR",
"before": 0.16,
"after": 1.0,
"delta": 0.84,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.714,
"after": 0.0,
"delta": -0.714,
"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.129 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.210 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.622 | - |
| predicted_H | 1.040 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.357 | - |
| predicted_R | 0.676 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.448 | - |
| 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.383 | 0.254 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.997 | 2.787 |
| predicted_AVG | 0.261 | 0.013 |
| predicted_BB | 1.103 | 0.481 |
| predicted_H | 1.867 | 0.827 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.285 | 0.125 |
| predicted_OBP | 0.365 | 0.008 |
| predicted_R | 1.267 | 0.591 |
| predicted_RBI | 0.704 | 0.274 |
| predicted_SLG | 0.458 | 0.010 |
| predicted_SO | 1.225 | 0.511 |
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.383 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.997 | 0.000 |
| predicted_AVG | 0.265 | 0.004 |
| predicted_BB | 1.106 | 0.003 |
| predicted_H | 1.851 | -0.016 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.283 | -0.002 |
| predicted_OBP | 0.365 | -0.000 |
| predicted_R | 1.254 | -0.014 |
| predicted_RBI | 0.696 | -0.007 |
| predicted_SLG | 0.441 | -0.017 |
| predicted_SO | 1.222 | -0.003 |
AB rounded to 7 (raw=7.00), rates preserved: AVG=0.264 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.383 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.003 |
| predicted_AVG | 0.286 | 0.021 |
| predicted_BB | 1.000 | -0.106 |
| predicted_H | 2.000 | 0.149 |
| predicted_HR | 0.000 | -0.283 |
| predicted_OBP | 0.375 | 0.010 |
| predicted_R | 1.000 | -0.254 |
| predicted_RBI | 1.000 | 0.304 |
| predicted_SLG | 0.286 | -0.155 |
| predicted_SO | 1.000 | -0.222 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | - | 20.000 | 5.000 | 2.000 | 0.000 | 0.000 | 0.000 | 4.000 | 2.000 | 4.000 | 0.2500 | 0.3182 | 0.3500 | 0.2500 | 0.0000 | 0.0000 | 0.1000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 36.000 | 12.000 | 5.000 | 0.000 | 1.000 | 3.000 | 9.000 | 9.000 | 5.000 | 0.3333 | 0.4667 | 0.5556 | 0.3333 | 0.0278 | 0.0833 | 0.2500 | 0.1389 |
| season | 0.60 | 62 | - | 948.000 | 254.000 | 31.000 | 0.000 | 58.000 | 130.000 | 163.000 | 150.000 | 172.000 | 0.2679 | 0.3666 | 0.4842 | 0.2679 | 0.0612 | 0.1371 | 0.1582 | 0.1814 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7030 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.5130 |
| predicted_AVG | 0.2767 |
| predicted_BB | 1.7100 |
| predicted_H | 2.9090 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.4420 |
| predicted_OBP | 0.3753 |
| predicted_R | 2.0130 |
| predicted_RBI | 1.0490 |
| predicted_SLG | 0.4700 |
| predicted_SO | 1.8690 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1290 | 0.7030 | 0.3829 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2100 | 10.5130 | 6.9975 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2767 | 0.2607 | model_form_blend |
| predicted_BB | 0.6220 | 1.7100 | 1.1032 | model_form_blend |
| predicted_H | 1.0400 | 2.9090 | 1.8666 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1600 | 0.4420 | 0.2847 | model_form_blend |
| predicted_OBP | 0.3570 | 0.3753 | 0.3651 | model_form_blend |
| predicted_R | 0.6760 | 2.0130 | 1.2673 | model_form_blend |
| predicted_RBI | 0.4300 | 1.0490 | 0.7038 | model_form_blend |
| predicted_SLG | 0.4480 | 0.4700 | 0.4577 | model_form_blend |
| predicted_SO | 0.7140 | 1.8690 | 1.2248 | 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 | 241 |
| 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.268 |
| 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 | 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 | 3B |
| gameID | 20260607_TB@MIA |
| game_type | full |
| mlbID | 691406 |
| playerID | 691406 |
| playerName | Junior Caminero |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-07 |
| sl_k_percent | 15.3 |
| sl_bb_percent | 13.9 |
| sl_woba | 0.381 |
| sl_xwoba | 0.373 |
| sl_xba | 0.277 |
| sl_xslg | 0.484 |
| sl_sweet_spot_percent | 25.3 |
| sl_barrel_batted_rate | 11.9 |
| sl_hard_hit_percent | 48.2 |
| sl_exit_velocity_avg | 92.3 |
| sl_launch_angle_avg | 8.4 |
| sl_whiff_percent | 20.4 |
| sl_swing_percent | 40.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.189 | 0.000 | 0.000 | Hitting_2B | 0.189 | 0.000 | -0.189 | 0.000 |
| predicted_3B | 0.026 | 0.000 | 0.000 | Hitting_3B | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_AB | 4.470 | 3.000 | 7.000 | Hitting_AB | 3.925 | 4.000 | -0.925 | -1.000 |
| predicted_AVG | 0.269 | 0.000 | 0.286 | Hitting_AVG | 0.320 | 0.250 | -0.320 | -0.250 |
| predicted_BB | 0.383 | 1.000 | 1.000 | Hitting_BB | 0.383 | 0.000 | 0.617 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.200 | 0.000 | 2.000 | Hitting_H | 1.256 | 1.000 | -1.256 | -1.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.145 | 0.000 | -0.145 | 0.000 |
| predicted_OBP | 0.376 | 0.250 | 0.375 | Hitting_OBP | 0.398 | 0.250 | -0.148 | 0.000 |
| predicted_R | 0.555 | 0.000 | 1.000 | Hitting_R | 0.555 | 0.000 | -0.555 | 0.000 |
| predicted_RBI | 0.720 | 0.000 | 1.000 | Hitting_RBI | 0.705 | 1.000 | -0.705 | -1.000 |
| predicted_SLG | 0.477 | 0.000 | 0.286 | Hitting_SLG | 0.493 | 0.250 | -0.493 | -0.250 |
| predicted_SO | 0.559 | 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 | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.3830 -> 1.0000 (boost 0.6170, better) |
| Biggest Deboost | predicted_AB: 4.4700 -> 3.0000 (deboost -1.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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.4700 -> 7.1095 (boost 2.6395, 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 | 1 | 2 | 1 | 2 | predicted_AVG: 0.3030 -> 0.3161 (boost 0.0131, better) | predicted_OBP: 0.3921 -> 0.3732 (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 | 1 | 6 | 1 | 6 | predicted_BB: 0.6479 -> 1.0000 (boost 0.3521, better) | predicted_2B: 0.3325 -> 0.0000 (deboost -0.3325, worse) | AB rounded to 7 (raw=7.11), rates preserved: AVG=0.316 HR/AB=0.037 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8575 -> 1.0000 (boost 0.1425, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4845 -> 0.2860 (deboost -0.1985, 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: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2860 -> 0.4845 (boost 0.1985, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "650490",
"player_name": "Yandy Díaz",
"position": "DH",
"team": "TB",
"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.189,
"predicted_3B": 0.026,
"predicted_AB": 4.47,
"predicted_AVG": 0.269,
"predicted_BB": 0.383,
"predicted_H": 1.2,
"predicted_HR": 0.17,
"predicted_OBP": 0.376,
"predicted_R": 0.555,
"predicted_RBI": 0.72,
"predicted_SLG": 0.477,
"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.3325,
"predicted_3B": 0.0331,
"predicted_AB": 7.1095,
"predicted_AVG": 0.303,
"predicted_BB": 0.6462,
"predicted_H": 2.2665,
"predicted_HBP": 0.221,
"predicted_HR": 0.268,
"predicted_OBP": 0.3921,
"predicted_R": 0.8668,
"predicted_RBI": 1.2883,
"predicted_SLG": 0.4941,
"predicted_SO": 1.02
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.189,
"after": 0.3325,
"delta": 0.1435,
"percent_delta": 0.7593,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.026,
"after": 0.0331,
"delta": 0.0071,
"percent_delta": 0.2731,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 7.1095,
"delta": 2.6395,
"percent_delta": 0.5905,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.303,
"delta": 0.034,
"percent_delta": 0.1264,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.383,
"after": 0.6462,
"delta": 0.2632,
"percent_delta": 0.6872,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2,
"after": 2.2665,
"delta": 1.0665,
"percent_delta": 0.8888,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.268,
"delta": 0.098,
"percent_delta": 0.5765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.376,
"after": 0.3921,
"delta": 0.0161,
"percent_delta": 0.0428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.555,
"after": 0.8668,
"delta": 0.3118,
"percent_delta": 0.5618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.72,
"after": 1.2883,
"delta": 0.5683,
"percent_delta": 0.7893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.4941,
"delta": 0.0171,
"percent_delta": 0.0358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.559,
"after": 1.02,
"delta": 0.461,
"percent_delta": 0.8247,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.47,
"after": 7.1095,
"delta": 2.6395,
"percent_delta": 0.5905,
"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.3325,
"predicted_3B": 0.0331,
"predicted_AB": 7.1095,
"predicted_AVG": 0.3161,
"predicted_BB": 0.6479,
"predicted_H": 2.2472,
"predicted_HBP": 0.221,
"predicted_HR": 0.2662,
"predicted_OBP": 0.3732,
"predicted_R": 0.8575,
"predicted_RBI": 1.2745,
"predicted_SLG": 0.4845,
"predicted_SO": 1.0173
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3325,
"after": 0.3325,
"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": 7.1095,
"after": 7.1095,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.303,
"after": 0.3161,
"delta": 0.0131,
"percent_delta": 0.0432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6462,
"after": 0.6479,
"delta": 0.0017,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.2665,
"after": 2.2472,
"delta": -0.0193,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.221,
"after": 0.221,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.268,
"after": 0.2662,
"delta": -0.0018,
"percent_delta": -0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3921,
"after": 0.3732,
"delta": -0.0189,
"percent_delta": -0.0482,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8668,
"after": 0.8575,
"delta": -0.0093,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.2883,
"after": 1.2745,
"delta": -0.0138,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4941,
"after": 0.4845,
"delta": -0.0096,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.02,
"after": 1.0173,
"delta": -0.0027,
"percent_delta": -0.0026,
"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.303,
"after": 0.3161,
"delta": 0.0131,
"percent_delta": 0.0432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3921,
"after": 0.3732,
"delta": -0.0189,
"percent_delta": -0.0482,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.11), rates preserved: AVG=0.316 HR/AB=0.037",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3325,
"after": 0.0,
"delta": -0.3325,
"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": 7.1095,
"after": 7.0,
"delta": -0.1095,
"percent_delta": -0.0154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6479,
"after": 1.0,
"delta": 0.3521,
"percent_delta": 0.5434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.2472,
"after": 2.0,
"delta": -0.2472,
"percent_delta": -0.11,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.221,
"after": 0.0,
"delta": -0.221,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2662,
"after": 0.0,
"delta": -0.2662,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.2745,
"after": 1.0,
"delta": -0.2745,
"percent_delta": -0.2154,
"direction": "deboost",
"projection_effect": "worse",
"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": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.6479,
"after": 1.0,
"delta": 0.3521,
"percent_delta": 0.5434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3325,
"after": 0.0,
"delta": -0.3325,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 0.8575,
"after": 1.0,
"delta": 0.1425,
"percent_delta": 0.1662,
"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.8575,
"after": 1.0,
"delta": 0.1425,
"percent_delta": 0.1662,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3161,
"after": 0.286,
"delta": -0.0301,
"percent_delta": -0.0952,
"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": 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_OBP",
"before": 0.3732,
"after": 0.375,
"delta": 0.0018,
"percent_delta": 0.0048,
"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.4845,
"after": 0.286,
"delta": -0.1985,
"percent_delta": -0.4097,
"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.4845,
"after": 0.286,
"delta": -0.1985,
"percent_delta": -0.4097,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 0.0,
"delta": -2.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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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.3161,
"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.3732,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4845,
"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.286,
"after": 0.3161,
"delta": 0.0301,
"percent_delta": 0.1052,
"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.375,
"after": 0.3732,
"delta": -0.0018,
"percent_delta": -0.0048,
"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.286,
"after": 0.4845,
"delta": 0.1985,
"percent_delta": 0.6941,
"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.286,
"after": 0.4845,
"delta": 0.1985,
"percent_delta": 0.6941,
"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.189,
"after": 0.0,
"delta": -0.189,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 3.0,
"delta": -1.47,
"percent_delta": -0.3289,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.3161,
"delta": 0.0471,
"percent_delta": 0.1751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.383,
"after": 1.0,
"delta": 0.617,
"percent_delta": 1.611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2,
"after": 0.0,
"delta": -1.2,
"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.376,
"after": 0.3732,
"delta": -0.0028,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.555,
"after": 0.0,
"delta": -0.555,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.72,
"after": 0.0,
"delta": -0.72,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.4845,
"delta": 0.0075,
"percent_delta": 0.0157,
"direction": "boost",
"projection_effect": "better",
"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": 3,
"deboosted_metrics": 7,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.383,
"after": 1.0,
"delta": 0.617,
"percent_delta": 1.611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.47,
"after": 3.0,
"delta": -1.47,
"percent_delta": -0.3289,
"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.189 | - |
| predicted_3B | 0.026 | - |
| predicted_AB | 4.470 | - |
| predicted_AVG | 0.269 | - |
| predicted_BB | 0.383 | - |
| predicted_H | 1.200 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.376 | - |
| predicted_R | 0.555 | - |
| predicted_RBI | 0.720 | - |
| predicted_SLG | 0.477 | - |
| 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.333 | 0.144 |
| predicted_3B | 0.033 | 0.007 |
| predicted_AB | 7.109 | 2.639 |
| predicted_AVG | 0.303 | 0.034 |
| predicted_BB | 0.646 | 0.263 |
| predicted_H | 2.267 | 1.067 |
| predicted_HBP | 0.221 | - |
| predicted_HR | 0.268 | 0.098 |
| predicted_OBP | 0.392 | 0.016 |
| predicted_R | 0.867 | 0.312 |
| predicted_RBI | 1.288 | 0.568 |
| predicted_SLG | 0.494 | 0.017 |
| predicted_SO | 1.020 | 0.461 |
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.333 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 7.109 | 0.000 |
| predicted_AVG | 0.316 | 0.013 |
| predicted_BB | 0.648 | 0.002 |
| predicted_H | 2.247 | -0.019 |
| predicted_HBP | 0.221 | 0.000 |
| predicted_HR | 0.266 | -0.002 |
| predicted_OBP | 0.373 | -0.019 |
| predicted_R | 0.858 | -0.009 |
| predicted_RBI | 1.274 | -0.014 |
| predicted_SLG | 0.484 | -0.010 |
| predicted_SO | 1.017 | -0.003 |
AB rounded to 7 (raw=7.11), rates preserved: AVG=0.316 HR/AB=0.037
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.333 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 7.000 | -0.109 |
| predicted_AVG | 0.286 | -0.030 |
| predicted_BB | 1.000 | 0.352 |
| predicted_H | 2.000 | -0.247 |
| predicted_HR | 0.000 | -0.266 |
| predicted_OBP | 0.375 | 0.002 |
| predicted_R | 1.000 | 0.142 |
| predicted_RBI | 1.000 | -0.274 |
| predicted_SLG | 0.286 | -0.199 |
| 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 | -4.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | - | 20.000 | 8.000 | 1.000 | 0.000 | 0.000 | 4.000 | 1.000 | 1.000 | 3.000 | 0.4000 | 0.4286 | 0.4500 | 0.4000 | 0.0000 | 0.2000 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 10 | - | 39.000 | 15.000 | 2.000 | 0.000 | 3.000 | 9.000 | 5.000 | 5.000 | 7.000 | 0.3846 | 0.4545 | 0.6667 | 0.3846 | 0.0769 | 0.2308 | 0.1282 | 0.1795 |
| season | 0.60 | 59 | - | 891.000 | 285.000 | 43.000 | 6.000 | 33.000 | 160.000 | 126.000 | 87.000 | 127.000 | 0.3199 | 0.3980 | 0.4927 | 0.3199 | 0.0370 | 0.1796 | 0.0976 | 0.1425 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5140 |
| predicted_3B | 0.0420 |
| predicted_AB | 10.4470 |
| predicted_AVG | 0.3460 |
| predicted_BB | 0.9790 |
| predicted_H | 3.6150 |
| predicted_HBP | 0.2210 |
| predicted_HR | 0.3920 |
| predicted_OBP | 0.4125 |
| predicted_R | 1.2610 |
| predicted_RBI | 2.0070 |
| predicted_SLG | 0.5158 |
| predicted_SO | 1.6030 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1890 | 0.5140 | 0.3325 | model_form_blend |
| predicted_3B | 0.0260 | 0.0420 | 0.0331 | model_form_blend |
| predicted_AB | 4.4700 | 10.4470 | 7.1095 | model_form_blend |
| predicted_AVG | 0.2690 | 0.3460 | 0.3030 | model_form_blend |
| predicted_BB | 0.3830 | 0.9790 | 0.6462 | model_form_blend |
| predicted_H | 1.2000 | 3.6150 | 2.2665 | model_form_blend |
| predicted_HBP | - | 0.2210 | 0.2210 | form_only |
| predicted_HR | 0.1700 | 0.3920 | 0.2680 | model_form_blend |
| predicted_OBP | 0.3760 | 0.4125 | 0.3921 | model_form_blend |
| predicted_R | 0.5550 | 1.2610 | 0.8668 | model_form_blend |
| predicted_RBI | 0.7200 | 2.0070 | 1.2883 | model_form_blend |
| predicted_SLG | 0.4770 | 0.5158 | 0.4941 | model_form_blend |
| predicted_SO | 0.5590 | 1.6030 | 1.0200 | 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 | 227 |
| 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.32 |
| 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 | 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 | DH |
| gameID | 20260607_TB@MIA |
| game_type | full |
| mlbID | 650490 |
| playerID | 650490 |
| playerName | Yandy Díaz |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-07 |
| sl_k_percent | 12.8 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.402 |
| sl_xwoba | 0.374 |
| sl_xba | 0.299 |
| sl_xslg | 0.485 |
| sl_sweet_spot_percent | 28.6 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 46.4 |
| sl_exit_velocity_avg | 90.9 |
| sl_launch_angle_avg | 5.9 |
| sl_whiff_percent | 13.8 |
| 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.064 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 2.511 | 4.000 | 4.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.262 | 0.250 | 0.250 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.213 | 0.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.610 | 1.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.285 | 0.250 | 0.250 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.255 | 0.000 | 0.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.322 | 0.250 | 0.250 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.830 | 0.000 | 1.000 | Hitting_SO | - | - | - | - |
| 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: 2.5110 -> 4.0000 (boost 1.4890, better) |
| Biggest Deboost | predicted_SO: 0.8300 -> 0.0000 (deboost -0.8300, 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 | 8 | 6 | 2 | 5 | 3 | predicted_AB: 2.5110 -> 3.7169 (boost 1.2059, better) | predicted_SLG: 0.3220 -> 0.2938 (deboost -0.0282, 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.2395 -> 0.2185 (deboost -0.0210, 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.7169 -> 4.0000 (boost 0.2831, better) | predicted_BB: 0.3571 -> 0.0000 (deboost -0.3571, worse) | AB rounded to 4 (raw=3.72), rates preserved: AVG=0.219 HR/AB=0.013 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4284 -> 0.0000 (deboost -0.4284, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2185 -> 0.2500 (boost 0.0315, better) | predicted_OBP: 0.2870 -> 0.2500 (deboost -0.0370, 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 | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2500 -> 0.2870 (boost 0.0370, better) | predicted_AVG: 0.2500 -> 0.2185 (deboost -0.0315, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "596103",
"player_name": "Austin Slater",
"position": "LF",
"team": "TB",
"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.064,
"predicted_3B": 0.0,
"predicted_AB": 2.511,
"predicted_AVG": 0.262,
"predicted_BB": 0.213,
"predicted_H": 0.61,
"predicted_HR": 0.06,
"predicted_OBP": 0.285,
"predicted_R": 0.255,
"predicted_RBI": 0.27,
"predicted_SLG": 0.322,
"predicted_SO": 0.83
},
"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.0945,
"predicted_3B": 0.0016,
"predicted_AB": 3.7169,
"predicted_AVG": 0.2395,
"predicted_BB": 0.3562,
"predicted_H": 0.8192,
"predicted_HBP": 0.009,
"predicted_HR": 0.0501,
"predicted_OBP": 0.2822,
"predicted_R": 0.433,
"predicted_RBI": 0.3273,
"predicted_SLG": 0.2938,
"predicted_SO": 1.218
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.064,
"after": 0.0945,
"delta": 0.0305,
"percent_delta": 0.4766,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0016,
"delta": 0.0016,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.511,
"after": 3.7169,
"delta": 1.2059,
"percent_delta": 0.4802,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2395,
"delta": -0.0225,
"percent_delta": -0.0859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.213,
"after": 0.3562,
"delta": 0.1432,
"percent_delta": 0.6723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.61,
"after": 0.8192,
"delta": 0.2092,
"percent_delta": 0.343,
"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.285,
"after": 0.2822,
"delta": -0.0028,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.255,
"after": 0.433,
"delta": 0.178,
"percent_delta": 0.698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.3273,
"delta": 0.0573,
"percent_delta": 0.2122,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.322,
"after": 0.2938,
"delta": -0.0282,
"percent_delta": -0.0876,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.83,
"after": 1.218,
"delta": 0.388,
"percent_delta": 0.4675,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 6,
"deboosted_metrics": 2,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.511,
"after": 3.7169,
"delta": 1.2059,
"percent_delta": 0.4802,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.322,
"after": 0.2938,
"delta": -0.0282,
"percent_delta": -0.0876,
"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": 2,
"last_10": 4,
"season": 20
}
},
{
"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.0945,
"predicted_3B": 0.0016,
"predicted_AB": 3.7169,
"predicted_AVG": 0.2185,
"predicted_BB": 0.3571,
"predicted_H": 0.8122,
"predicted_HBP": 0.009,
"predicted_HR": 0.0498,
"predicted_OBP": 0.287,
"predicted_R": 0.4284,
"predicted_RBI": 0.3238,
"predicted_SLG": 0.285,
"predicted_SO": 1.2148
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0945,
"after": 0.0945,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0016,
"after": 0.0016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7169,
"after": 3.7169,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2395,
"after": 0.2185,
"delta": -0.021,
"percent_delta": -0.0877,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3562,
"after": 0.3571,
"delta": 0.0009,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8192,
"after": 0.8122,
"delta": -0.007,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.009,
"after": 0.009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0501,
"after": 0.0498,
"delta": -0.0003,
"percent_delta": -0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2822,
"after": 0.287,
"delta": 0.0048,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.433,
"after": 0.4284,
"delta": -0.0046,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3273,
"after": 0.3238,
"delta": -0.0035,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2938,
"after": 0.285,
"delta": -0.0088,
"percent_delta": -0.03,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.218,
"after": 1.2148,
"delta": -0.0032,
"percent_delta": -0.0026,
"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.2395,
"after": 0.2185,
"delta": -0.021,
"percent_delta": -0.0877,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.72), rates preserved: AVG=0.219 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.0945,
"after": 0.0,
"delta": -0.0945,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0016,
"after": 0.0,
"delta": -0.0016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7169,
"after": 4.0,
"delta": 0.2831,
"percent_delta": 0.0762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3571,
"after": 0.0,
"delta": -0.3571,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8122,
"after": 1.0,
"delta": 0.1878,
"percent_delta": 0.2312,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0498,
"after": 0.0,
"delta": -0.0498,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3238,
"after": 0.0,
"delta": -0.3238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2148,
"after": 1.0,
"delta": -0.2148,
"percent_delta": -0.1768,
"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.7169,
"after": 4.0,
"delta": 0.2831,
"percent_delta": 0.0762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3571,
"after": 0.0,
"delta": -0.3571,
"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.4284,
"after": 0.0,
"delta": -0.4284,
"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.4284,
"after": 0.0,
"delta": -0.4284,
"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.2185,
"after": 0.25,
"delta": 0.0315,
"percent_delta": 0.1442,
"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.287,
"after": 0.25,
"delta": -0.037,
"percent_delta": -0.1289,
"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.285,
"after": 0.25,
"delta": -0.035,
"percent_delta": -0.1228,
"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.2185,
"after": 0.25,
"delta": 0.0315,
"percent_delta": 0.1442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.287,
"after": 0.25,
"delta": -0.037,
"percent_delta": -0.1289,
"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.2185,
"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.287,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.285,
"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.2185,
"delta": -0.0315,
"percent_delta": -0.1259,
"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.287,
"delta": 0.037,
"percent_delta": 0.1481,
"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.285,
"delta": 0.035,
"percent_delta": 0.1399,
"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.25,
"after": 0.287,
"delta": 0.037,
"percent_delta": 0.1481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2185,
"delta": -0.0315,
"percent_delta": -0.1259,
"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.064,
"after": 0.0,
"delta": -0.064,
"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.511,
"after": 4.0,
"delta": 1.489,
"percent_delta": 0.593,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2185,
"delta": -0.0435,
"percent_delta": -0.166,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.213,
"after": 0.0,
"delta": -0.213,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.61,
"after": 1.0,
"delta": 0.39,
"percent_delta": 0.6393,
"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.287,
"delta": 0.002,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.255,
"after": 0.0,
"delta": -0.255,
"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.322,
"after": 0.285,
"delta": -0.037,
"percent_delta": -0.1149,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.83,
"after": 0.0,
"delta": -0.83,
"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": 2.511,
"after": 4.0,
"delta": 1.489,
"percent_delta": 0.593,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.83,
"after": 0.0,
"delta": -0.83,
"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.064 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.511 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.213 | - |
| predicted_H | 0.610 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.285 | - |
| predicted_R | 0.255 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.322 | - |
| predicted_SO | 0.830 | - |
Final model 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.095 | 0.030 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.717 | 1.206 |
| predicted_AVG | 0.239 | -0.023 |
| predicted_BB | 0.356 | 0.143 |
| predicted_H | 0.819 | 0.209 |
| predicted_HBP | 0.009 | - |
| predicted_HR | 0.050 | -0.010 |
| predicted_OBP | 0.282 | -0.003 |
| predicted_R | 0.433 | 0.178 |
| predicted_RBI | 0.327 | 0.057 |
| predicted_SLG | 0.294 | -0.028 |
| predicted_SO | 1.218 | 0.388 |
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.095 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.717 | 0.000 |
| predicted_AVG | 0.218 | -0.021 |
| predicted_BB | 0.357 | 0.001 |
| predicted_H | 0.812 | -0.007 |
| predicted_HBP | 0.009 | 0.000 |
| predicted_HR | 0.050 | -0.000 |
| predicted_OBP | 0.287 | 0.005 |
| predicted_R | 0.428 | -0.005 |
| predicted_RBI | 0.324 | -0.004 |
| predicted_SLG | 0.285 | -0.009 |
| predicted_SO | 1.215 | -0.003 |
AB rounded to 4 (raw=3.72), rates preserved: AVG=0.219 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 | - |
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.095 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.283 |
| predicted_AVG | 0.250 | 0.032 |
| predicted_BB | 0.000 | -0.357 |
| predicted_H | 1.000 | 0.188 |
| predicted_HR | 0.000 | -0.050 |
| predicted_OBP | 0.250 | -0.037 |
| predicted_R | 0.000 | -0.428 |
| predicted_RBI | 0.000 | -0.324 |
| predicted_SLG | 0.250 | -0.035 |
| predicted_SO | 1.000 | -0.215 |
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 | 2 | - | 10.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 3.000 | 5.000 | 0.0000 | 0.2308 | 0.0000 | 0.0000 | 0.0000 | 0.2000 | 0.3000 | 0.5000 |
| last_10 | 0.20 | 4 | - | 29.000 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 10.000 | 0.0690 | 0.1562 | 0.0690 | 0.0690 | 0.0000 | 0.0690 | 0.1035 | 0.3448 |
| season | 0.60 | 20 | - | 118.000 | 28.000 | 3.000 | 0.000 | 0.000 | 5.000 | 12.000 | 10.000 | 39.000 | 0.2373 | 0.2901 | 0.2627 | 0.2373 | 0.0000 | 0.0424 | 0.0848 | 0.3305 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1410 |
| predicted_3B | 0.0040 |
| predicted_AB | 5.5600 |
| predicted_AVG | 0.2050 |
| predicted_BB | 0.5750 |
| predicted_H | 1.1390 |
| predicted_HBP | 0.0090 |
| predicted_HR | 0.0350 |
| predicted_OBP | 0.2779 |
| predicted_R | 0.7050 |
| predicted_RBI | 0.4150 |
| predicted_SLG | 0.2508 |
| predicted_SO | 1.8110 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0640 | 0.1410 | 0.0945 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0016 | model_form_blend |
| predicted_AB | 2.5110 | 5.5600 | 3.7169 | model_form_blend |
| predicted_AVG | 0.2620 | 0.2050 | 0.2395 | model_form_blend |
| predicted_BB | 0.2130 | 0.5750 | 0.3562 | model_form_blend |
| predicted_H | 0.6100 | 1.1390 | 0.8192 | model_form_blend |
| predicted_HBP | - | 0.0090 | 0.0090 | form_only |
| predicted_HR | 0.0600 | 0.0350 | 0.0501 | model_form_blend |
| predicted_OBP | 0.2850 | 0.2779 | 0.2822 | model_form_blend |
| predicted_R | 0.2550 | 0.7050 | 0.4330 | model_form_blend |
| predicted_RBI | 0.2700 | 0.4150 | 0.3273 | model_form_blend |
| predicted_SLG | 0.3220 | 0.2508 | 0.2938 | model_form_blend |
| predicted_SO | 0.8300 | 1.8110 | 1.2180 | 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 | 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 | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.237 |
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.169 | 0.000 | 0.000 | Hitting_2B | 0.163 | 0.000 | -0.163 | 0.000 |
| predicted_3B | 0.060 | 0.000 | 0.000 | Hitting_3B | 0.058 | 0.000 | -0.058 | 0.000 |
| predicted_AB | 3.000 | 4.000 | 4.000 | Hitting_AB | 2.895 | 3.000 | 1.105 | 1.000 |
| predicted_AVG | 0.270 | 0.000 | 0.250 | Hitting_AVG | 0.337 | 0.333 | -0.337 | -0.333 |
| predicted_BB | 0.337 | 0.000 | 0.000 | Hitting_BB | 0.337 | 0.000 | -0.337 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.720 | 0.000 | 1.000 | Hitting_H | 0.977 | 1.000 | -0.977 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.093 | 0.000 | -0.093 | 0.000 |
| predicted_OBP | 0.319 | 0.000 | 0.250 | Hitting_OBP | 0.398 | 0.333 | -0.398 | -0.333 |
| predicted_R | 0.386 | 0.000 | 0.000 | Hitting_R | 0.372 | 0.000 | -0.372 | 0.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.733 | 0.000 | -0.733 | 0.000 |
| predicted_SLG | 0.416 | 0.000 | 0.250 | Hitting_SLG | 0.530 | 0.333 | -0.530 | -0.333 |
| predicted_SO | 0.602 | 1.000 | 1.000 | Hitting_SO | 0.581 | 1.000 | 0.419 | 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 | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) |
| 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.0000 -> 4.2753 (boost 1.2753, 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.4474 -> 0.4655 (boost 0.0181, better) | predicted_AVG: 0.2831 -> 0.2740 (deboost -0.0091, 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 | 0 | 6 | - | predicted_BB: 0.4153 -> 0.0000 (deboost -0.4153, worse) | AB rounded to 4 (raw=4.28), rates preserved: AVG=0.274 HR/AB=0.035 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4857 -> 0.0000 (deboost -0.4857, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4655 -> 0.2500 (deboost -0.2155, 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.4655 (boost 0.2155, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668723",
"player_name": "Ryan Vilade",
"position": "RF",
"team": "TB",
"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.169,
"predicted_3B": 0.06,
"predicted_AB": 3.0,
"predicted_AVG": 0.27,
"predicted_BB": 0.337,
"predicted_H": 0.72,
"predicted_HR": 0.1,
"predicted_OBP": 0.319,
"predicted_R": 0.386,
"predicted_RBI": 0.54,
"predicted_SLG": 0.416,
"predicted_SO": 0.602
},
"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.2327,
"predicted_3B": 0.0672,
"predicted_AB": 4.2753,
"predicted_AVG": 0.2831,
"predicted_BB": 0.4142,
"predicted_H": 1.1815,
"predicted_HBP": 0.005,
"predicted_HR": 0.1515,
"predicted_OBP": 0.3327,
"predicted_R": 0.491,
"predicted_RBI": 0.9939,
"predicted_SLG": 0.4474,
"predicted_SO": 0.9623
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.169,
"after": 0.2327,
"delta": 0.0637,
"percent_delta": 0.3769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.06,
"after": 0.0672,
"delta": 0.0072,
"percent_delta": 0.12,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.2753,
"delta": 1.2753,
"percent_delta": 0.4251,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.2831,
"delta": 0.0131,
"percent_delta": 0.0485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 0.4142,
"delta": 0.0772,
"percent_delta": 0.2291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 1.1815,
"delta": 0.4615,
"percent_delta": 0.641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1515,
"delta": 0.0515,
"percent_delta": 0.515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.319,
"after": 0.3327,
"delta": 0.0137,
"percent_delta": 0.0429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.386,
"after": 0.491,
"delta": 0.105,
"percent_delta": 0.272,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.9939,
"delta": 0.4539,
"percent_delta": 0.8406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.416,
"after": 0.4474,
"delta": 0.0314,
"percent_delta": 0.0755,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.602,
"after": 0.9623,
"delta": 0.3603,
"percent_delta": 0.5985,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.2753,
"delta": 1.2753,
"percent_delta": 0.4251,
"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": 7,
"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.2327,
"predicted_3B": 0.0672,
"predicted_AB": 4.2753,
"predicted_AVG": 0.274,
"predicted_BB": 0.4153,
"predicted_H": 1.1715,
"predicted_HBP": 0.005,
"predicted_HR": 0.1505,
"predicted_OBP": 0.3383,
"predicted_R": 0.4857,
"predicted_RBI": 0.9833,
"predicted_SLG": 0.4655,
"predicted_SO": 0.9598
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2327,
"after": 0.2327,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0672,
"after": 0.0672,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2753,
"after": 4.2753,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2831,
"after": 0.274,
"delta": -0.0091,
"percent_delta": -0.0321,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4142,
"after": 0.4153,
"delta": 0.0011,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1815,
"after": 1.1715,
"delta": -0.01,
"percent_delta": -0.0085,
"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.1515,
"after": 0.1505,
"delta": -0.001,
"percent_delta": -0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3327,
"after": 0.3383,
"delta": 0.0056,
"percent_delta": 0.0168,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.491,
"after": 0.4857,
"delta": -0.0053,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9939,
"after": 0.9833,
"delta": -0.0106,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4474,
"after": 0.4655,
"delta": 0.0181,
"percent_delta": 0.0405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9623,
"after": 0.9598,
"delta": -0.0025,
"percent_delta": -0.0026,
"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.4474,
"after": 0.4655,
"delta": 0.0181,
"percent_delta": 0.0405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2831,
"after": 0.274,
"delta": -0.0091,
"percent_delta": -0.0321,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.28), rates preserved: AVG=0.274 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.2327,
"after": 0.0,
"delta": -0.2327,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0672,
"after": 0.0,
"delta": -0.0672,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.2753,
"after": 4.0,
"delta": -0.2753,
"percent_delta": -0.0644,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4153,
"after": 0.0,
"delta": -0.4153,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1715,
"after": 1.0,
"delta": -0.1715,
"percent_delta": -0.1464,
"direction": "deboost",
"projection_effect": "worse",
"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.1505,
"after": 0.0,
"delta": -0.1505,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9833,
"after": 1.0,
"delta": 0.0167,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9598,
"after": 1.0,
"delta": 0.0402,
"percent_delta": 0.0419,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4153,
"after": 0.0,
"delta": -0.4153,
"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.4857,
"after": 0.0,
"delta": -0.4857,
"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.4857,
"after": 0.0,
"delta": -0.4857,
"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.274,
"after": 0.25,
"delta": -0.024,
"percent_delta": -0.0876,
"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.3383,
"after": 0.25,
"delta": -0.0883,
"percent_delta": -0.261,
"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.4655,
"after": 0.25,
"delta": -0.2155,
"percent_delta": -0.4629,
"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.4655,
"after": 0.25,
"delta": -0.2155,
"percent_delta": -0.4629,
"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.274,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3383,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4655,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.274,
"delta": 0.024,
"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_CS",
"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.3383,
"delta": 0.0883,
"percent_delta": 0.3531,
"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.4655,
"delta": 0.2155,
"percent_delta": 0.8619,
"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.4655,
"delta": 0.2155,
"percent_delta": 0.8619,
"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.169,
"after": 0.0,
"delta": -0.169,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.27,
"after": 0.274,
"delta": 0.004,
"percent_delta": 0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 0.0,
"delta": -0.337,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.319,
"after": 0.3383,
"delta": 0.0193,
"percent_delta": 0.0605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.386,
"after": 0.0,
"delta": -0.386,
"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.416,
"after": 0.4655,
"delta": 0.0495,
"percent_delta": 0.119,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.602,
"after": 1.0,
"delta": 0.398,
"percent_delta": 0.6611,
"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_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": 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.169 | - |
| predicted_3B | 0.060 | - |
| predicted_AB | 3.000 | - |
| predicted_AVG | 0.270 | - |
| predicted_BB | 0.337 | - |
| predicted_H | 0.720 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.319 | - |
| predicted_R | 0.386 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.416 | - |
| predicted_SO | 0.602 | - |
Final model 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.233 | 0.064 |
| predicted_3B | 0.067 | 0.007 |
| predicted_AB | 4.275 | 1.275 |
| predicted_AVG | 0.283 | 0.013 |
| predicted_BB | 0.414 | 0.077 |
| predicted_H | 1.181 | 0.462 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.151 | 0.051 |
| predicted_OBP | 0.333 | 0.014 |
| predicted_R | 0.491 | 0.105 |
| predicted_RBI | 0.994 | 0.454 |
| predicted_SLG | 0.447 | 0.031 |
| predicted_SO | 0.962 | 0.360 |
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.233 | 0.000 |
| predicted_3B | 0.067 | 0.000 |
| predicted_AB | 4.275 | 0.000 |
| predicted_AVG | 0.274 | -0.009 |
| predicted_BB | 0.415 | 0.001 |
| predicted_H | 1.171 | -0.010 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.150 | -0.001 |
| predicted_OBP | 0.338 | 0.006 |
| predicted_R | 0.486 | -0.005 |
| predicted_RBI | 0.983 | -0.011 |
| predicted_SLG | 0.466 | 0.018 |
| predicted_SO | 0.960 | -0.003 |
AB rounded to 4 (raw=4.28), rates preserved: AVG=0.274 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 | 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.233 |
| predicted_3B | 0.000 | -0.067 |
| predicted_AB | 4.000 | -0.275 |
| predicted_AVG | 0.250 | -0.024 |
| predicted_BB | 0.000 | -0.415 |
| predicted_H | 1.000 | -0.171 |
| predicted_HR | 0.000 | -0.150 |
| predicted_OBP | 0.250 | -0.088 |
| predicted_R | 0.000 | -0.486 |
| predicted_RBI | 1.000 | 0.017 |
| predicted_SLG | 0.250 | -0.216 |
| predicted_SO | 1.000 | 0.040 |
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 | - | 18.000 | 5.000 | 1.000 | 0.000 | 1.000 | 6.000 | 1.000 | 0.000 | 7.000 | 0.2778 | 0.2778 | 0.5000 | 0.2778 | 0.0556 | 0.3333 | 0.0000 | 0.3889 |
| last_10 | 0.20 | 7 | - | 34.000 | 5.000 | 1.000 | 0.000 | 1.000 | 14.000 | 1.000 | 4.000 | 7.000 | 0.1471 | 0.2368 | 0.2647 | 0.1471 | 0.0294 | 0.4118 | 0.1177 | 0.2059 |
| season | 0.60 | 34 | - | 249.000 | 84.000 | 14.000 | 5.000 | 8.000 | 62.000 | 32.000 | 28.000 | 50.000 | 0.3373 | 0.3972 | 0.5301 | 0.3373 | 0.0321 | 0.2490 | 0.1124 | 0.2008 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3200 |
| predicted_3B | 0.0770 |
| predicted_AB | 6.0230 |
| predicted_AVG | 0.3011 |
| predicted_BB | 0.5200 |
| predicted_H | 1.8140 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.2220 |
| predicted_OBP | 0.3514 |
| predicted_R | 0.6350 |
| predicted_RBI | 1.6160 |
| predicted_SLG | 0.4904 |
| predicted_SO | 1.4560 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1690 | 0.3200 | 0.2327 | model_form_blend |
| predicted_3B | 0.0600 | 0.0770 | 0.0672 | model_form_blend |
| predicted_AB | 3.0000 | 6.0230 | 4.2753 | model_form_blend |
| predicted_AVG | 0.2700 | 0.3011 | 0.2831 | model_form_blend |
| predicted_BB | 0.3370 | 0.5200 | 0.4142 | model_form_blend |
| predicted_H | 0.7200 | 1.8140 | 1.1815 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.1000 | 0.2220 | 0.1515 | model_form_blend |
| predicted_OBP | 0.3190 | 0.3514 | 0.3327 | model_form_blend |
| predicted_R | 0.3860 | 0.6350 | 0.4910 | model_form_blend |
| predicted_RBI | 0.5400 | 1.6160 | 0.9939 | model_form_blend |
| predicted_SLG | 0.4160 | 0.4904 | 0.4474 | model_form_blend |
| predicted_SO | 0.6020 | 1.4560 | 0.9623 | 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 | 83 |
| 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.337 |
| 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 | 1 |
| 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 | 20260607_TB@MIA |
| game_type | full |
| mlbID | 668723 |
| playerID | 668723 |
| playerName | Ryan Vilade |
| pos | RF |
| started | True |
| startingPosition | LF |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-07 |
| sl_k_percent | 19.2 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.35 |
| sl_xwoba | 0.307 |
| sl_xba | 0.246 |
| sl_xslg | 0.379 |
| sl_sweet_spot_percent | 32.4 |
| sl_barrel_batted_rate | 4.1 |
| sl_hard_hit_percent | 37.8 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 19.0 |
| sl_swing_percent | 49.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.164 | 0.000 | 0.000 | Hitting_2B | 0.162 | 0.000 | -0.162 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.286 | 4.000 | 5.000 | Hitting_AB | 3.239 | 2.000 | 0.761 | 2.000 |
| predicted_AVG | 0.235 | 0.500 | 0.200 | Hitting_AVG | 0.246 | 0.000 | 0.254 | 0.500 |
| predicted_BB | 0.114 | 0.000 | 0.000 | Hitting_BB | 0.113 | 0.000 | -0.113 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.640 | 2.000 | 1.000 | Hitting_H | 0.796 | 0.000 | 1.204 | 2.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_OBP | 0.265 | 0.500 | 0.200 | Hitting_OBP | 0.288 | 0.333 | 0.212 | 0.167 |
| predicted_R | 0.286 | 0.000 | 0.000 | Hitting_R | 0.282 | 0.000 | -0.282 | 0.000 |
| predicted_RBI | 0.330 | 0.000 | 1.000 | Hitting_RBI | 0.268 | 0.000 | -0.268 | 0.000 |
| predicted_SLG | 0.315 | 0.500 | 0.200 | Hitting_SLG | 0.322 | 0.000 | 0.178 | 0.500 |
| predicted_SO | 0.493 | 0.000 | 1.000 | Hitting_SO | 0.486 | 1.000 | -0.486 | -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_H: 0.6400 -> 2.0000 (boost 1.3600, better) |
| Biggest Deboost | predicted_SO: 0.4930 -> 0.0000 (deboost -0.4930, 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 | 9 | 6 | 3 | 5 | 4 | predicted_AB: 3.2860 -> 5.0123 (boost 1.7263, better) | predicted_SLG: 0.3150 -> 0.2972 (deboost -0.0178, 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.2557 -> 0.2203 (deboost -0.0354, 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.5185 -> 1.0000 (boost 0.4815, better) | predicted_2B: 0.2493 -> 0.0000 (deboost -0.2493, worse) | AB rounded to 5 (raw=5.01), rates preserved: AVG=0.197 HR/AB=0.010 |
| 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.4004 -> 0.0000 (deboost -0.4004, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.2781 -> 0.2000 (deboost -0.0781, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 2 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 4.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.2000 -> 0.2781 (boost 0.0781, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663743",
"player_name": "Nick Fortes",
"position": "C",
"team": "TB",
"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.0,
"predicted_AB": 3.286,
"predicted_AVG": 0.235,
"predicted_BB": 0.114,
"predicted_H": 0.64,
"predicted_HR": 0.05,
"predicted_OBP": 0.265,
"predicted_R": 0.286,
"predicted_RBI": 0.33,
"predicted_SLG": 0.315,
"predicted_SO": 0.493
},
"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.2493,
"predicted_3B": 0.0009,
"predicted_AB": 5.0123,
"predicted_AVG": 0.2206,
"predicted_BB": 0.1461,
"predicted_H": 0.9983,
"predicted_HBP": 0.248,
"predicted_HR": 0.0513,
"predicted_OBP": 0.2557,
"predicted_R": 0.4047,
"predicted_RBI": 0.5241,
"predicted_SLG": 0.2972,
"predicted_SO": 0.6607
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.164,
"after": 0.2493,
"delta": 0.0853,
"percent_delta": 0.5201,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.286,
"after": 5.0123,
"delta": 1.7263,
"percent_delta": 0.5253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2206,
"delta": -0.0144,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.114,
"after": 0.1461,
"delta": 0.0321,
"percent_delta": 0.2816,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.9983,
"delta": 0.3583,
"percent_delta": 0.5598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0513,
"delta": 0.0013,
"percent_delta": 0.026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.265,
"after": 0.2557,
"delta": -0.0093,
"percent_delta": -0.0351,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.286,
"after": 0.4047,
"delta": 0.1187,
"percent_delta": 0.415,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.5241,
"delta": 0.1941,
"percent_delta": 0.5882,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.315,
"after": 0.2972,
"delta": -0.0178,
"percent_delta": -0.0565,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.493,
"after": 0.6607,
"delta": 0.1677,
"percent_delta": 0.3402,
"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_AB",
"before": 3.286,
"after": 5.0123,
"delta": 1.7263,
"percent_delta": 0.5253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.315,
"after": 0.2972,
"delta": -0.0178,
"percent_delta": -0.0565,
"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": 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.2493,
"predicted_3B": 0.0009,
"predicted_AB": 5.0123,
"predicted_AVG": 0.1975,
"predicted_BB": 0.1465,
"predicted_H": 0.9898,
"predicted_HBP": 0.248,
"predicted_HR": 0.051,
"predicted_OBP": 0.2203,
"predicted_R": 0.4004,
"predicted_RBI": 0.5185,
"predicted_SLG": 0.2781,
"predicted_SO": 0.659
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2493,
"after": 0.2493,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0123,
"after": 5.0123,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2206,
"after": 0.1975,
"delta": -0.0231,
"percent_delta": -0.1047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1461,
"after": 0.1465,
"delta": 0.0004,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9983,
"after": 0.9898,
"delta": -0.0085,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.248,
"after": 0.248,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0513,
"after": 0.051,
"delta": -0.0003,
"percent_delta": -0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2557,
"after": 0.2203,
"delta": -0.0354,
"percent_delta": -0.1384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4047,
"after": 0.4004,
"delta": -0.0043,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5241,
"after": 0.5185,
"delta": -0.0056,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2972,
"after": 0.2781,
"delta": -0.0191,
"percent_delta": -0.0643,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6607,
"after": 0.659,
"delta": -0.0017,
"percent_delta": -0.0026,
"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.2557,
"after": 0.2203,
"delta": -0.0354,
"percent_delta": -0.1384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.01), rates preserved: AVG=0.197 HR/AB=0.010",
"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.2493,
"after": 0.0,
"delta": -0.2493,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0123,
"after": 5.0,
"delta": -0.0123,
"percent_delta": -0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1465,
"after": 0.0,
"delta": -0.1465,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9898,
"after": 1.0,
"delta": 0.0102,
"percent_delta": 0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.248,
"after": 0.0,
"delta": -0.248,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5185,
"after": 1.0,
"delta": 0.4815,
"percent_delta": 0.9286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.659,
"after": 1.0,
"delta": 0.341,
"percent_delta": 0.5175,
"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.5185,
"after": 1.0,
"delta": 0.4815,
"percent_delta": 0.9286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2493,
"after": 0.0,
"delta": -0.2493,
"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": 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": 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": 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.4004,
"after": 0.0,
"delta": -0.4004,
"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.4004,
"after": 0.0,
"delta": -0.4004,
"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": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 0.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.1975,
"after": 0.2,
"delta": 0.0025,
"percent_delta": 0.0127,
"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.2203,
"after": 0.2,
"delta": -0.0203,
"percent_delta": -0.0921,
"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.2781,
"after": 0.2,
"delta": -0.0781,
"percent_delta": -0.2808,
"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.2781,
"after": 0.2,
"delta": -0.0781,
"percent_delta": -0.2808,
"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": 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": 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": 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_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_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.1975,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2203,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2781,
"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.1975,
"delta": -0.0025,
"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_CS",
"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.2,
"after": 0.2203,
"delta": 0.0203,
"percent_delta": 0.1013,
"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.2781,
"delta": 0.0781,
"percent_delta": 0.3904,
"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.2,
"after": 0.2781,
"delta": 0.0781,
"percent_delta": 0.3904,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.286,
"after": 4.0,
"delta": 0.714,
"percent_delta": 0.2173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.1975,
"delta": -0.0375,
"percent_delta": -0.1596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.114,
"after": 0.0,
"delta": -0.114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 2.0,
"delta": 1.36,
"percent_delta": 2.125,
"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.265,
"after": 0.2203,
"delta": -0.0447,
"percent_delta": -0.1687,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.286,
"after": 0.0,
"delta": -0.286,
"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.315,
"after": 0.2781,
"delta": -0.0369,
"percent_delta": -0.1171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.493,
"after": 0.0,
"delta": -0.493,
"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_H",
"before": 0.64,
"after": 2.0,
"delta": 1.36,
"percent_delta": 2.125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.493,
"after": 0.0,
"delta": -0.493,
"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.164 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.286 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.114 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.265 | - |
| predicted_R | 0.286 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.315 | - |
| predicted_SO | 0.493 | - |
Final model 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.249 | 0.085 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.012 | 1.726 |
| predicted_AVG | 0.221 | -0.014 |
| predicted_BB | 0.146 | 0.032 |
| predicted_H | 0.998 | 0.358 |
| predicted_HBP | 0.248 | - |
| predicted_HR | 0.051 | 0.001 |
| predicted_OBP | 0.256 | -0.009 |
| predicted_R | 0.405 | 0.119 |
| predicted_RBI | 0.524 | 0.194 |
| predicted_SLG | 0.297 | -0.018 |
| predicted_SO | 0.661 | 0.168 |
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.249 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.012 | 0.000 |
| predicted_AVG | 0.198 | -0.023 |
| predicted_BB | 0.146 | 0.000 |
| predicted_H | 0.990 | -0.008 |
| predicted_HBP | 0.248 | 0.000 |
| predicted_HR | 0.051 | -0.000 |
| predicted_OBP | 0.220 | -0.035 |
| predicted_R | 0.400 | -0.004 |
| predicted_RBI | 0.518 | -0.006 |
| predicted_SLG | 0.278 | -0.019 |
| predicted_SO | 0.659 | -0.002 |
AB rounded to 5 (raw=5.01), rates preserved: AVG=0.197 HR/AB=0.010
| 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.400)
| 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 | 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.249 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.012 |
| predicted_AVG | 0.200 | 0.003 |
| predicted_BB | 0.000 | -0.146 |
| predicted_H | 1.000 | 0.010 |
| predicted_HR | 0.000 | -0.051 |
| predicted_OBP | 0.200 | -0.020 |
| predicted_R | 0.000 | -0.400 |
| predicted_RBI | 1.000 | 0.482 |
| predicted_SLG | 0.200 | -0.078 |
| predicted_SO | 1.000 | 0.341 |
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 | 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 | 2.000 | 1.000 | 0.000 | 0.000 | 2.000 | 1.000 | 0.000 | 1.000 | 0.1176 | 0.1667 | 0.1765 | 0.1177 | 0.0000 | 0.1177 | 0.0000 | 0.0588 |
| last_10 | 0.20 | 8 | - | 30.000 | 3.000 | 1.000 | 0.000 | 0.000 | 6.000 | 1.000 | 0.000 | 1.000 | 0.1000 | 0.1176 | 0.1333 | 0.1000 | 0.0000 | 0.2000 | 0.0000 | 0.0333 |
| season | 0.60 | 48 | - | 460.000 | 113.000 | 23.000 | 0.000 | 4.000 | 38.000 | 40.000 | 16.000 | 69.000 | 0.2457 | 0.2880 | 0.3217 | 0.2457 | 0.0087 | 0.0826 | 0.0348 | 0.1500 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3610 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.2710 |
| predicted_AVG | 0.2018 |
| predicted_BB | 0.1880 |
| predicted_H | 1.4670 |
| predicted_HBP | 0.2480 |
| predicted_HR | 0.0530 |
| predicted_OBP | 0.2436 |
| predicted_R | 0.5600 |
| predicted_RBI | 0.7780 |
| predicted_SLG | 0.2738 |
| predicted_SO | 0.8800 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1640 | 0.3610 | 0.2493 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.2860 | 7.2710 | 5.0123 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2018 | 0.2206 | model_form_blend |
| predicted_BB | 0.1140 | 0.1880 | 0.1461 | model_form_blend |
| predicted_H | 0.6400 | 1.4670 | 0.9983 | model_form_blend |
| predicted_HBP | - | 0.2480 | 0.2480 | form_only |
| predicted_HR | 0.0500 | 0.0530 | 0.0513 | model_form_blend |
| predicted_OBP | 0.2650 | 0.2436 | 0.2557 | model_form_blend |
| predicted_R | 0.2860 | 0.5600 | 0.4047 | model_form_blend |
| predicted_RBI | 0.3300 | 0.7780 | 0.5241 | model_form_blend |
| predicted_SLG | 0.3150 | 0.2738 | 0.2972 | model_form_blend |
| predicted_SO | 0.4930 | 0.8800 | 0.6607 | 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 | 142 |
| Season rows before report date | 142 |
| Report year | 2026 |
| Profile rows used | 140 |
| 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.246 |
| 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 | 2 |
| 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 | 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 | 20260606_TB@MIA |
| game_type | full |
| mlbID | 663743 |
| playerID | 663743 |
| playerName | Nick Fortes |
| pos | C |
| started | True |
| startingPosition | C |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-06 |
| sl_k_percent | 12.8 |
| sl_bb_percent | 2.6 |
| sl_woba | 0.264 |
| sl_xwoba | 0.269 |
| sl_xba | 0.246 |
| sl_xslg | 0.32 |
| sl_sweet_spot_percent | 22.7 |
| sl_barrel_batted_rate | 0.8 |
| sl_hard_hit_percent | 40.6 |
| sl_exit_velocity_avg | 86.8 |
| sl_launch_angle_avg | 7.4 |
| sl_whiff_percent | 15.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_2B | 0.201 | 0.000 | 0.000 | Hitting_2B | 0.197 | 0.000 | -0.197 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_AB | 3.336 | 4.000 | 5.000 | Hitting_AB | 3.263 | 2.000 | 0.737 | 2.000 |
| predicted_AVG | 0.262 | 0.000 | 0.200 | Hitting_AVG | 0.273 | 0.000 | -0.273 | 0.000 |
| predicted_BB | 0.425 | 0.000 | 1.000 | Hitting_BB | 0.423 | 2.000 | -0.423 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_H | 0.740 | 0.000 | 1.000 | Hitting_H | 0.891 | 0.000 | -0.891 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.337 | 0.000 | 0.333 | Hitting_OBP | 0.358 | 0.500 | -0.358 | -0.500 |
| predicted_R | 0.567 | 0.000 | 1.000 | Hitting_R | 0.555 | 1.000 | -0.555 | -1.000 |
| predicted_RBI | 0.440 | 0.000 | 1.000 | Hitting_RBI | 0.423 | 0.000 | -0.423 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.088 | 0.000 | -0.088 | 0.000 |
| predicted_SLG | 0.344 | 0.000 | 0.200 | Hitting_SLG | 0.351 | 0.000 | -0.351 | 0.000 |
| predicted_SO | 0.724 | 2.000 | 1.000 | Hitting_SO | 0.708 | 1.000 | 1.292 | 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.7240 -> 2.0000 (boost 1.2760, worse) |
| Biggest Deboost | predicted_H: 0.7400 -> 0.0000 (deboost -0.7400, 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 | 7 | 1 | 6 | 2 | predicted_AB: 3.3360 -> 4.9047 (boost 1.5687, better) | predicted_SLG: 0.3440 -> 0.3382 (deboost -0.0058, 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.2652 -> 0.2489 (deboost -0.0163, 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_BB: 0.6509 -> 1.0000 (boost 0.3491, better) | predicted_2B: 0.2500 -> 0.0000 (deboost -0.2500, worse) | AB rounded to 5 (raw=4.90), rates preserved: AVG=0.249 HR/AB=0.007 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7510 -> 1.0000 (boost 0.2490, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3340 -> 0.2000 (deboost -0.1340, 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 -> 2.0000 (boost 1.0000, worse) | predicted_AB: 5.0000 -> 4.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.2000 -> 0.3340 (boost 0.1340, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "810938",
"player_name": "Ben Williamson",
"position": "2B",
"team": "TB",
"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.201,
"predicted_3B": 0.03,
"predicted_AB": 3.336,
"predicted_AVG": 0.262,
"predicted_BB": 0.425,
"predicted_H": 0.74,
"predicted_HR": 0.05,
"predicted_OBP": 0.337,
"predicted_R": 0.567,
"predicted_RBI": 0.44,
"predicted_SLG": 0.344,
"predicted_SO": 0.724
},
"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.25,
"predicted_3B": 0.033,
"predicted_AB": 4.9047,
"predicted_AVG": 0.2652,
"predicted_BB": 0.6492,
"predicted_H": 1.2313,
"predicted_HBP": 0.069,
"predicted_HR": 0.034,
"predicted_OBP": 0.3478,
"predicted_R": 0.7591,
"predicted_RBI": 0.7435,
"predicted_SLG": 0.3382,
"predicted_SO": 1.1194
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.201,
"after": 0.25,
"delta": 0.049,
"percent_delta": 0.2438,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.033,
"delta": 0.003,
"percent_delta": 0.1,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.336,
"after": 4.9047,
"delta": 1.5687,
"percent_delta": 0.4702,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2652,
"delta": 0.0032,
"percent_delta": 0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.425,
"after": 0.6492,
"delta": 0.2242,
"percent_delta": 0.5275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 1.2313,
"delta": 0.4913,
"percent_delta": 0.6639,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.034,
"delta": -0.016,
"percent_delta": -0.32,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.3478,
"delta": 0.0108,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.567,
"after": 0.7591,
"delta": 0.1921,
"percent_delta": 0.3388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.7435,
"delta": 0.3035,
"percent_delta": 0.6898,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.344,
"after": 0.3382,
"delta": -0.0058,
"percent_delta": -0.0169,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.724,
"after": 1.1194,
"delta": 0.3954,
"percent_delta": 0.5461,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.336,
"after": 4.9047,
"delta": 1.5687,
"percent_delta": 0.4702,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.344,
"after": 0.3382,
"delta": -0.0058,
"percent_delta": -0.0169,
"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.25,
"predicted_3B": 0.033,
"predicted_AB": 4.9047,
"predicted_AVG": 0.2489,
"predicted_BB": 0.6509,
"predicted_H": 1.2208,
"predicted_HBP": 0.069,
"predicted_HR": 0.0338,
"predicted_OBP": 0.3369,
"predicted_R": 0.751,
"predicted_RBI": 0.7355,
"predicted_SLG": 0.334,
"predicted_SO": 1.1165
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.25,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.033,
"after": 0.033,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9047,
"after": 4.9047,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2652,
"after": 0.2489,
"delta": -0.0163,
"percent_delta": -0.0615,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6492,
"after": 0.6509,
"delta": 0.0017,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2313,
"after": 1.2208,
"delta": -0.0105,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.069,
"after": 0.069,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.034,
"after": 0.0338,
"delta": -0.0002,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3478,
"after": 0.3369,
"delta": -0.0109,
"percent_delta": -0.0313,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7591,
"after": 0.751,
"delta": -0.0081,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7435,
"after": 0.7355,
"delta": -0.008,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3382,
"after": 0.334,
"delta": -0.0042,
"percent_delta": -0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.1194,
"after": 1.1165,
"delta": -0.0029,
"percent_delta": -0.0026,
"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.2652,
"after": 0.2489,
"delta": -0.0163,
"percent_delta": -0.0615,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.90), rates preserved: AVG=0.249 HR/AB=0.007",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.25,
"after": 0.0,
"delta": -0.25,
"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": 4.9047,
"after": 5.0,
"delta": 0.0953,
"percent_delta": 0.0194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6509,
"after": 1.0,
"delta": 0.3491,
"percent_delta": 0.5363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2208,
"after": 1.0,
"delta": -0.2208,
"percent_delta": -0.1809,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.069,
"after": 0.0,
"delta": -0.069,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0338,
"after": 0.0,
"delta": -0.0338,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7355,
"after": 1.0,
"delta": 0.2645,
"percent_delta": 0.3596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1165,
"after": 1.0,
"delta": -0.1165,
"percent_delta": -0.1043,
"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_BB",
"before": 0.6509,
"after": 1.0,
"delta": 0.3491,
"percent_delta": 0.5363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"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": 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": 5.0,
"after": 5.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.751,
"after": 1.0,
"delta": 0.249,
"percent_delta": 0.3316,
"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.751,
"after": 1.0,
"delta": 0.249,
"percent_delta": 0.3316,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.2489,
"after": 0.2,
"delta": -0.0489,
"percent_delta": -0.1965,
"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.3369,
"after": 0.333,
"delta": -0.0039,
"percent_delta": -0.0116,
"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.334,
"after": 0.2,
"delta": -0.134,
"percent_delta": -0.4012,
"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.334,
"after": 0.2,
"delta": -0.134,
"percent_delta": -0.4012,
"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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"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": 2.0,
"delta": 1.0,
"percent_delta": 1.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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"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": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2489,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3369,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.334,
"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.2,
"after": 0.2489,
"delta": 0.0489,
"percent_delta": 0.2446,
"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.333,
"after": 0.3369,
"delta": 0.0039,
"percent_delta": 0.0117,
"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.2,
"after": 0.334,
"delta": 0.134,
"percent_delta": 0.67,
"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.2,
"after": 0.334,
"delta": 0.134,
"percent_delta": 0.67,
"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.201,
"after": 0.0,
"delta": -0.201,
"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.336,
"after": 4.0,
"delta": 0.664,
"percent_delta": 0.199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2489,
"delta": -0.0131,
"percent_delta": -0.05,
"direction": "deboost",
"projection_effect": "worse",
"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": 0.74,
"after": 0.0,
"delta": -0.74,
"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.337,
"after": 0.3369,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.567,
"after": 0.0,
"delta": -0.567,
"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.344,
"after": 0.334,
"delta": -0.01,
"percent_delta": -0.0291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.724,
"after": 2.0,
"delta": 1.276,
"percent_delta": 1.7624,
"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.724,
"after": 2.0,
"delta": 1.276,
"percent_delta": 1.7624,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.74,
"after": 0.0,
"delta": -0.74,
"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.201 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.336 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.425 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.337 | - |
| predicted_R | 0.567 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.344 | - |
| predicted_SO | 0.724 | - |
Final model 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.250 | 0.049 |
| predicted_3B | 0.033 | 0.003 |
| predicted_AB | 4.905 | 1.569 |
| predicted_AVG | 0.265 | 0.003 |
| predicted_BB | 0.649 | 0.224 |
| predicted_H | 1.231 | 0.491 |
| predicted_HBP | 0.069 | - |
| predicted_HR | 0.034 | -0.016 |
| predicted_OBP | 0.348 | 0.011 |
| predicted_R | 0.759 | 0.192 |
| predicted_RBI | 0.744 | 0.304 |
| predicted_SLG | 0.338 | -0.006 |
| predicted_SO | 1.119 | 0.395 |
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.250 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 4.905 | 0.000 |
| predicted_AVG | 0.249 | -0.016 |
| predicted_BB | 0.651 | 0.002 |
| predicted_H | 1.221 | -0.010 |
| predicted_HBP | 0.069 | 0.000 |
| predicted_HR | 0.034 | -0.000 |
| predicted_OBP | 0.337 | -0.011 |
| predicted_R | 0.751 | -0.008 |
| predicted_RBI | 0.736 | -0.008 |
| predicted_SLG | 0.334 | -0.004 |
| predicted_SO | 1.117 | -0.003 |
AB rounded to 5 (raw=4.90), rates preserved: AVG=0.249 HR/AB=0.007
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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 | 5.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.250 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 5.000 | 0.095 |
| predicted_AVG | 0.200 | -0.049 |
| predicted_BB | 1.000 | 0.349 |
| predicted_H | 1.000 | -0.221 |
| predicted_HR | 0.000 | -0.034 |
| predicted_OBP | 0.333 | -0.004 |
| predicted_R | 1.000 | 0.249 |
| predicted_RBI | 1.000 | 0.264 |
| predicted_SLG | 0.200 | -0.134 |
| predicted_SO | 1.000 | -0.117 |
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 | -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 | - | 11.000 | 3.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 2.000 | 2.000 | 0.2727 | 0.3846 | 0.2727 | 0.2727 | 0.0000 | 0.2727 | 0.1818 | 0.1818 |
| last_10 | 0.20 | 10 | - | 23.000 | 6.000 | 1.000 | 0.000 | 0.000 | 4.000 | 3.000 | 3.000 | 8.000 | 0.2609 | 0.3704 | 0.3043 | 0.2609 | 0.0000 | 0.1739 | 0.1304 | 0.3478 |
| season | 0.60 | 43 | - | 447.000 | 122.000 | 27.000 | 4.000 | 0.000 | 57.000 | 76.000 | 57.000 | 97.000 | 0.2729 | 0.3564 | 0.3512 | 0.2729 | 0.0000 | 0.1275 | 0.1275 | 0.2170 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3140 |
| predicted_3B | 0.0370 |
| predicted_AB | 6.9540 |
| predicted_AVG | 0.2693 |
| predicted_BB | 0.9420 |
| predicted_H | 1.8730 |
| predicted_HBP | 0.0690 |
| predicted_HR | 0.0130 |
| predicted_OBP | 0.3620 |
| predicted_R | 1.0100 |
| predicted_RBI | 1.1400 |
| predicted_SLG | 0.3307 |
| predicted_SO | 1.6360 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2010 | 0.3140 | 0.2500 | model_form_blend |
| predicted_3B | 0.0300 | 0.0370 | 0.0330 | model_form_blend |
| predicted_AB | 3.3360 | 6.9540 | 4.9047 | model_form_blend |
| predicted_AVG | 0.2620 | 0.2693 | 0.2652 | model_form_blend |
| predicted_BB | 0.4250 | 0.9420 | 0.6492 | model_form_blend |
| predicted_H | 0.7400 | 1.8730 | 1.2313 | model_form_blend |
| predicted_HBP | - | 0.0690 | 0.0690 | form_only |
| predicted_HR | 0.0500 | 0.0130 | 0.0340 | model_form_blend |
| predicted_OBP | 0.3370 | 0.3620 | 0.3478 | model_form_blend |
| predicted_R | 0.5670 | 1.0100 | 0.7591 | model_form_blend |
| predicted_RBI | 0.4400 | 1.1400 | 0.7435 | model_form_blend |
| predicted_SLG | 0.3440 | 0.3307 | 0.3382 | model_form_blend |
| predicted_SO | 0.7240 | 1.6360 | 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 | 137 |
| Season rows before report date | 137 |
| Report year | 2026 |
| Profile rows used | 134 |
| 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.273 |
| 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 | 1 |
| 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 | 20260606_TB@MIA |
| game_type | full |
| mlbID | 810938 |
| playerID | 810938 |
| playerName | Ben Williamson |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-06 |
| sl_k_percent | 20.4 |
| sl_bb_percent | 10.9 |
| sl_woba | 0.311 |
| sl_xwoba | 0.305 |
| sl_xba | 0.252 |
| sl_xslg | 0.332 |
| sl_sweet_spot_percent | 32.0 |
| sl_barrel_batted_rate | 1.0 |
| sl_hard_hit_percent | 40.0 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 3.4 |
| sl_whiff_percent | 18.0 |
| sl_swing_percent | 40.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.147 | 0.000 | 0.000 | Hitting_2B | 0.144 | 0.000 | -0.144 | 0.000 |
| predicted_3B | 0.053 | 0.000 | 0.000 | Hitting_3B | 0.052 | 0.000 | -0.052 | 0.000 |
| predicted_AB | 3.340 | 3.000 | 6.000 | Hitting_AB | 3.275 | 2.000 | -0.275 | 1.000 |
| predicted_AVG | 0.233 | 0.000 | 0.167 | Hitting_AVG | 0.202 | 0.000 | -0.202 | 0.000 |
| predicted_BB | 0.453 | 1.000 | 1.000 | Hitting_BB | 0.444 | 0.000 | 0.556 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.052 | 0.000 | -0.052 | 0.000 |
| predicted_H | 0.680 | 0.000 | 1.000 | Hitting_H | 0.660 | 0.000 | -0.660 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.310 | 0.250 | 0.286 | Hitting_OBP | 0.303 | 0.333 | -0.053 | -0.083 |
| predicted_R | 0.513 | 0.000 | 1.000 | Hitting_R | 0.510 | 1.000 | -0.510 | -1.000 |
| predicted_RBI | 0.280 | 0.000 | 0.000 | Hitting_RBI | 0.353 | 0.000 | -0.353 | 0.000 |
| predicted_SLG | 0.299 | 0.000 | 0.167 | Hitting_SLG | 0.277 | 0.000 | -0.277 | 0.000 |
| predicted_SO | 1.047 | 1.000 | 2.000 | Hitting_SO | 1.026 | 1.000 | -0.026 | 0.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 | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_BB: 0.4530 -> 1.0000 (boost 0.5470, better) |
| Biggest Deboost | predicted_H: 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 | 9 | 7 | 2 | 6 | 3 | predicted_AB: 3.3400 -> 5.8012 (boost 2.4612, better) | predicted_SLG: 0.2990 -> 0.2881 (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 | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2250 -> 0.2093 (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 | 3 | 5 | 2 | 6 | predicted_BB: 0.7519 -> 1.0000 (boost 0.2481, better) | predicted_RBI: 0.4649 -> 0.0000 (deboost -0.4649, worse) | AB rounded to 6 (raw=5.80), rates preserved: AVG=0.209 HR/AB=0.006 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8328 -> 1.0000 (boost 0.1672, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.2885 -> 0.1670 (deboost -0.1215, 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: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.2885 (boost 0.1215, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670764",
"player_name": "Taylor Walls",
"position": "SS",
"team": "TB",
"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.053,
"predicted_AB": 3.34,
"predicted_AVG": 0.233,
"predicted_BB": 0.453,
"predicted_H": 0.68,
"predicted_HR": 0.05,
"predicted_OBP": 0.31,
"predicted_R": 0.513,
"predicted_RBI": 0.28,
"predicted_SLG": 0.299,
"predicted_SO": 1.047
},
"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.073,
"predicted_AB": 5.8012,
"predicted_AVG": 0.225,
"predicted_BB": 0.75,
"predicted_H": 1.2248,
"predicted_HBP": 0.201,
"predicted_HR": 0.0348,
"predicted_OBP": 0.3125,
"predicted_R": 0.8418,
"predicted_RBI": 0.4699,
"predicted_SLG": 0.2881,
"predicted_SO": 1.9393
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.2093,
"delta": 0.0623,
"percent_delta": 0.4238,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.053,
"after": 0.073,
"delta": 0.02,
"percent_delta": 0.3774,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.34,
"after": 5.8012,
"delta": 2.4612,
"percent_delta": 0.7369,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.225,
"delta": -0.008,
"percent_delta": -0.0343,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.453,
"after": 0.75,
"delta": 0.297,
"percent_delta": 0.6556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.68,
"after": 1.2248,
"delta": 0.5448,
"percent_delta": 0.8012,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0348,
"delta": -0.0152,
"percent_delta": -0.304,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.3125,
"delta": 0.0025,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.513,
"after": 0.8418,
"delta": 0.3288,
"percent_delta": 0.6409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.4699,
"delta": 0.1899,
"percent_delta": 0.6782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.299,
"after": 0.2881,
"delta": -0.0109,
"percent_delta": -0.0365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.047,
"after": 1.9393,
"delta": 0.8923,
"percent_delta": 0.8522,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 7,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.34,
"after": 5.8012,
"delta": 2.4612,
"percent_delta": 0.7369,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.299,
"after": 0.2881,
"delta": -0.0109,
"percent_delta": -0.0365,
"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": 6,
"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.2093,
"predicted_3B": 0.073,
"predicted_AB": 5.8012,
"predicted_AVG": 0.2093,
"predicted_BB": 0.7519,
"predicted_H": 1.2144,
"predicted_HBP": 0.201,
"predicted_HR": 0.0346,
"predicted_OBP": 0.3001,
"predicted_R": 0.8328,
"predicted_RBI": 0.4649,
"predicted_SLG": 0.2885,
"predicted_SO": 1.9343
},
"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.073,
"after": 0.073,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.8012,
"after": 5.8012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2093,
"delta": -0.0157,
"percent_delta": -0.0698,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.75,
"after": 0.7519,
"delta": 0.0019,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2248,
"after": 1.2144,
"delta": -0.0104,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.201,
"after": 0.201,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0348,
"after": 0.0346,
"delta": -0.0002,
"percent_delta": -0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3125,
"after": 0.3001,
"delta": -0.0124,
"percent_delta": -0.0397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8418,
"after": 0.8328,
"delta": -0.009,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4699,
"after": 0.4649,
"delta": -0.005,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2881,
"after": 0.2885,
"delta": 0.0004,
"percent_delta": 0.0014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.9393,
"after": 1.9343,
"delta": -0.005,
"percent_delta": -0.0026,
"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.225,
"after": 0.2093,
"delta": -0.0157,
"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 6 (raw=5.80), rates preserved: AVG=0.209 HR/AB=0.006",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.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.073,
"after": 0.0,
"delta": -0.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.8012,
"after": 6.0,
"delta": 0.1988,
"percent_delta": 0.0343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7519,
"after": 1.0,
"delta": 0.2481,
"percent_delta": 0.33,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2144,
"after": 1.0,
"delta": -0.2144,
"percent_delta": -0.1765,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.201,
"after": 0.0,
"delta": -0.201,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0346,
"after": 0.0,
"delta": -0.0346,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4649,
"after": 0.0,
"delta": -0.4649,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9343,
"after": 2.0,
"delta": 0.0657,
"percent_delta": 0.034,
"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_BB",
"before": 0.7519,
"after": 1.0,
"delta": 0.2481,
"percent_delta": 0.33,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4649,
"after": 0.0,
"delta": -0.4649,
"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": 6.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": 6.0,
"after": 6.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.8328,
"after": 1.0,
"delta": 0.1672,
"percent_delta": 0.2008,
"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": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8328,
"after": 1.0,
"delta": 0.1672,
"percent_delta": 0.2008,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2093,
"after": 0.167,
"delta": -0.0423,
"percent_delta": -0.2021,
"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.3001,
"after": 0.286,
"delta": -0.0141,
"percent_delta": -0.047,
"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.2885,
"after": 0.167,
"delta": -0.1215,
"percent_delta": -0.4211,
"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_SLG",
"before": 0.2885,
"after": 0.167,
"delta": -0.1215,
"percent_delta": -0.4211,
"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": 6.0,
"after": 3.0,
"delta": -3.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": 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": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.2093,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.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.2885,
"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.167,
"after": 0.2093,
"delta": 0.0423,
"percent_delta": 0.2535,
"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.286,
"after": 0.3001,
"delta": 0.0141,
"percent_delta": 0.0492,
"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.167,
"after": 0.2885,
"delta": 0.1215,
"percent_delta": 0.7273,
"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.167,
"after": 0.2885,
"delta": 0.1215,
"percent_delta": 0.7273,
"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.147,
"after": 0.0,
"delta": -0.147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.053,
"after": 0.0,
"delta": -0.053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.34,
"after": 3.0,
"delta": -0.34,
"percent_delta": -0.1018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2093,
"delta": -0.0237,
"percent_delta": -0.1017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.453,
"after": 1.0,
"delta": 0.547,
"percent_delta": 1.2075,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.68,
"after": 0.0,
"delta": -0.68,
"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.3001,
"delta": -0.0099,
"percent_delta": -0.0319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.513,
"after": 0.0,
"delta": -0.513,
"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.299,
"after": 0.2885,
"delta": -0.0105,
"percent_delta": -0.0351,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.047,
"after": 1.0,
"delta": -0.047,
"percent_delta": -0.0449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.453,
"after": 1.0,
"delta": 0.547,
"percent_delta": 1.2075,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"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": "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.053 | - |
| predicted_AB | 3.340 | - |
| predicted_AVG | 0.233 | - |
| predicted_BB | 0.453 | - |
| predicted_H | 0.680 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.310 | - |
| predicted_R | 0.513 | - |
| predicted_RBI | 0.280 | - |
| predicted_SLG | 0.299 | - |
| predicted_SO | 1.047 | - |
Final model 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.062 |
| predicted_3B | 0.073 | 0.020 |
| predicted_AB | 5.801 | 2.461 |
| predicted_AVG | 0.225 | -0.008 |
| predicted_BB | 0.750 | 0.297 |
| predicted_H | 1.225 | 0.545 |
| predicted_HBP | 0.201 | - |
| predicted_HR | 0.035 | -0.015 |
| predicted_OBP | 0.312 | 0.003 |
| predicted_R | 0.842 | 0.329 |
| predicted_RBI | 0.470 | 0.190 |
| predicted_SLG | 0.288 | -0.011 |
| predicted_SO | 1.939 | 0.892 |
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.073 | 0.000 |
| predicted_AB | 5.801 | 0.000 |
| predicted_AVG | 0.209 | -0.016 |
| predicted_BB | 0.752 | 0.002 |
| predicted_H | 1.214 | -0.010 |
| predicted_HBP | 0.201 | 0.000 |
| predicted_HR | 0.035 | -0.000 |
| predicted_OBP | 0.300 | -0.012 |
| predicted_R | 0.833 | -0.009 |
| predicted_RBI | 0.465 | -0.005 |
| predicted_SLG | 0.288 | 0.000 |
| predicted_SO | 1.934 | -0.005 |
AB rounded to 6 (raw=5.80), rates preserved: AVG=0.209 HR/AB=0.006
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.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 | 6.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 | 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.209 |
| predicted_3B | 0.000 | -0.073 |
| predicted_AB | 6.000 | 0.199 |
| predicted_AVG | 0.167 | -0.042 |
| predicted_BB | 1.000 | 0.248 |
| predicted_H | 1.000 | -0.214 |
| predicted_HR | 0.000 | -0.035 |
| predicted_OBP | 0.286 | -0.014 |
| predicted_R | 1.000 | 0.167 |
| predicted_RBI | 0.000 | -0.465 |
| predicted_SLG | 0.167 | -0.121 |
| predicted_SO | 2.000 | 0.066 |
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 | -3.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 | -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 | - | 16.000 | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 7.000 | 0.2500 | 0.3684 | 0.2500 | 0.2500 | 0.0000 | 0.0000 | 0.1250 | 0.4375 |
| last_10 | 0.20 | 6 | - | 46.000 | 9.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 22.000 | 0.1957 | 0.2449 | 0.1957 | 0.1956 | 0.0000 | 0.0000 | 0.0435 | 0.4783 |
| season | 0.60 | 44 | - | 501.000 | 101.000 | 22.000 | 8.000 | 0.000 | 54.000 | 77.000 | 68.000 | 157.000 | 0.2016 | 0.3031 | 0.2774 | 0.2016 | 0.0000 | 0.1078 | 0.1357 | 0.3134 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2900 |
| predicted_3B | 0.0990 |
| predicted_AB | 8.9920 |
| predicted_AVG | 0.2147 |
| predicted_BB | 1.1350 |
| predicted_H | 1.9310 |
| predicted_HBP | 0.2010 |
| predicted_HR | 0.0150 |
| predicted_OBP | 0.3158 |
| predicted_R | 1.2680 |
| predicted_RBI | 0.7160 |
| predicted_SLG | 0.2740 |
| predicted_SO | 3.0960 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.2900 | 0.2093 | model_form_blend |
| predicted_3B | 0.0530 | 0.0990 | 0.0730 | model_form_blend |
| predicted_AB | 3.3400 | 8.9920 | 5.8012 | model_form_blend |
| predicted_AVG | 0.2330 | 0.2147 | 0.2250 | model_form_blend |
| predicted_BB | 0.4530 | 1.1350 | 0.7500 | model_form_blend |
| predicted_H | 0.6800 | 1.9310 | 1.2248 | model_form_blend |
| predicted_HBP | - | 0.2010 | 0.2010 | form_only |
| predicted_HR | 0.0500 | 0.0150 | 0.0348 | model_form_blend |
| predicted_OBP | 0.3100 | 0.3158 | 0.3125 | model_form_blend |
| predicted_R | 0.5130 | 1.2680 | 0.8418 | model_form_blend |
| predicted_RBI | 0.2800 | 0.7160 | 0.4699 | model_form_blend |
| predicted_SLG | 0.2990 | 0.2740 | 0.2881 | model_form_blend |
| predicted_SO | 1.0470 | 3.0960 | 1.9393 | 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 | 150 |
| 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.202 |
| 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 | 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 | 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 | SS |
| gameID | 20260607_TB@MIA |
| game_type | full |
| mlbID | 670764 |
| playerID | 670764 |
| playerName | Taylor Walls |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.9 |
| sl_bb_percent | 11.4 |
| sl_woba | 0.276 |
| sl_xwoba | 0.238 |
| sl_xba | 0.17 |
| sl_xslg | 0.219 |
| sl_sweet_spot_percent | 27.5 |
| sl_barrel_batted_rate | 2.0 |
| sl_hard_hit_percent | 15.7 |
| sl_exit_velocity_avg | 82.6 |
| sl_launch_angle_avg | 20.0 |
| sl_whiff_percent | 22.5 |
| sl_swing_percent | 43.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 | 0.165 | 0.000 | -0.165 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.730 | 3.000 | 6.000 | Hitting_AB | 3.720 | 4.000 | -0.720 | -1.000 |
| predicted_AVG | 0.235 | 0.000 | 0.167 | Hitting_AVG | 0.286 | 0.250 | -0.286 | -0.250 |
| predicted_BB | 0.610 | 0.000 | 1.000 | Hitting_BB | 0.610 | 0.000 | -0.610 | 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 | 1.064 | 1.000 | -1.064 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.186 | 0.000 | -0.186 | 0.000 |
| predicted_OBP | 0.350 | 0.250 | 0.286 | Hitting_OBP | 0.382 | 0.250 | -0.132 | 0.000 |
| predicted_R | 0.585 | 0.000 | 1.000 | Hitting_R | 0.585 | 0.000 | -0.585 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.818 | 0.000 | -0.818 | 0.000 |
| predicted_SLG | 0.398 | 0.000 | 0.167 | Hitting_SLG | 0.481 | 0.250 | -0.481 | -0.250 |
| predicted_SO | 1.072 | 0.000 | 2.000 | Hitting_SO | 1.072 | 2.000 | -1.072 | -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_OBP: 0.3500 -> 0.3622 (boost 0.0122, better) |
| Biggest Deboost | predicted_SO: 1.0720 -> 0.0000 (deboost -1.0720, 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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.7300 -> 6.3746 (boost 2.6446, 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 | 6 | 0 | 6 | 0 | 6 | - | predicted_H: 1.5128 -> 1.0000 (deboost -0.5128, worse) | AB rounded to 6 (raw=6.37), rates preserved: AVG=0.237 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8455 -> 1.0000 (boost 0.1545, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3922 -> 0.1670 (deboost -0.2252, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 7 | 1 | 6 | 2 | 5 | predicted_HBP: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3922 (boost 0.2252, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666018",
"player_name": "Jonathan Aranda",
"position": "1B",
"team": "TB",
"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.0,
"predicted_AB": 3.73,
"predicted_AVG": 0.235,
"predicted_BB": 0.61,
"predicted_H": 0.88,
"predicted_HR": 0.15,
"predicted_OBP": 0.35,
"predicted_R": 0.585,
"predicted_RBI": 0.52,
"predicted_SLG": 0.398,
"predicted_SO": 1.072
},
"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.2092,
"predicted_3B": 0.0004,
"predicted_AB": 6.3746,
"predicted_AVG": 0.2377,
"predicted_BB": 1.2447,
"predicted_H": 1.5258,
"predicted_HBP": 0.086,
"predicted_HR": 0.2609,
"predicted_OBP": 0.3595,
"predicted_R": 0.8546,
"predicted_RBI": 0.977,
"predicted_SLG": 0.3955,
"predicted_SO": 2.0002
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.165,
"after": 0.2092,
"delta": 0.0442,
"percent_delta": 0.2679,
"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.73,
"after": 6.3746,
"delta": 2.6446,
"percent_delta": 0.709,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2377,
"delta": 0.0027,
"percent_delta": 0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.61,
"after": 1.2447,
"delta": 0.6347,
"percent_delta": 1.0405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 1.5258,
"delta": 0.6458,
"percent_delta": 0.7339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2609,
"delta": 0.1109,
"percent_delta": 0.7393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3595,
"delta": 0.0095,
"percent_delta": 0.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.585,
"after": 0.8546,
"delta": 0.2696,
"percent_delta": 0.4609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.977,
"delta": 0.457,
"percent_delta": 0.8788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.3955,
"delta": -0.0025,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.072,
"after": 2.0002,
"delta": 0.9282,
"percent_delta": 0.8659,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.73,
"after": 6.3746,
"delta": 2.6446,
"percent_delta": 0.709,
"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.2092,
"predicted_3B": 0.0004,
"predicted_AB": 6.3746,
"predicted_AVG": 0.2373,
"predicted_BB": 1.2479,
"predicted_H": 1.5128,
"predicted_HBP": 0.086,
"predicted_HR": 0.2592,
"predicted_OBP": 0.3622,
"predicted_R": 0.8455,
"predicted_RBI": 0.9665,
"predicted_SLG": 0.3922,
"predicted_SO": 1.995
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2092,
"after": 0.2092,
"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": 6.3746,
"after": 6.3746,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2377,
"after": 0.2373,
"delta": -0.0004,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.2447,
"after": 1.2479,
"delta": 0.0032,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5258,
"after": 1.5128,
"delta": -0.013,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.086,
"after": 0.086,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2609,
"after": 0.2592,
"delta": -0.0017,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3595,
"after": 0.3622,
"delta": 0.0027,
"percent_delta": 0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8546,
"after": 0.8455,
"delta": -0.0091,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.977,
"after": 0.9665,
"delta": -0.0105,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3955,
"after": 0.3922,
"delta": -0.0033,
"percent_delta": -0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0002,
"after": 1.995,
"delta": -0.0052,
"percent_delta": -0.0026,
"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 6 (raw=6.37), rates preserved: AVG=0.237 HR/AB=0.041",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2092,
"after": 0.0,
"delta": -0.2092,
"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": 6.3746,
"after": 6.0,
"delta": -0.3746,
"percent_delta": -0.0588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2479,
"after": 1.0,
"delta": -0.2479,
"percent_delta": -0.1987,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5128,
"after": 1.0,
"delta": -0.5128,
"percent_delta": -0.339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.086,
"after": 0.0,
"delta": -0.086,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2592,
"after": 0.0,
"delta": -0.2592,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9665,
"after": 1.0,
"delta": 0.0335,
"percent_delta": 0.0347,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.995,
"after": 2.0,
"delta": 0.005,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.5128,
"after": 1.0,
"delta": -0.5128,
"percent_delta": -0.339,
"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": 6.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": 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": 6.0,
"after": 6.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.8455,
"after": 1.0,
"delta": 0.1545,
"percent_delta": 0.1827,
"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": 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_R",
"before": 0.8455,
"after": 1.0,
"delta": 0.1545,
"percent_delta": 0.1827,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2373,
"after": 0.167,
"delta": -0.0703,
"percent_delta": -0.2962,
"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.3622,
"after": 0.286,
"delta": -0.0762,
"percent_delta": -0.2104,
"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.3922,
"after": 0.167,
"delta": -0.2252,
"percent_delta": -0.5742,
"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_SLG",
"before": 0.3922,
"after": 0.167,
"delta": -0.2252,
"percent_delta": -0.5742,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 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": 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": 2.0,
"after": 0.0,
"delta": -2.0,
"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_HBP",
"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": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.2373,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3622,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3922,
"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.167,
"after": 0.2373,
"delta": 0.0703,
"percent_delta": 0.4211,
"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": 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.3622,
"delta": 0.0762,
"percent_delta": 0.2664,
"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.167,
"after": 0.3922,
"delta": 0.2252,
"percent_delta": 1.3487,
"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.167,
"after": 0.3922,
"delta": 0.2252,
"percent_delta": 1.3487,
"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.165,
"after": 0.0,
"delta": -0.165,
"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.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.2373,
"delta": 0.0023,
"percent_delta": 0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.61,
"after": 0.0,
"delta": -0.61,
"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.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3622,
"delta": 0.0122,
"percent_delta": 0.0349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.585,
"after": 0.0,
"delta": -0.585,
"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.398,
"after": 0.3922,
"delta": -0.0058,
"percent_delta": -0.0146,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.072,
"after": 0.0,
"delta": -1.072,
"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_OBP",
"before": 0.35,
"after": 0.3622,
"delta": 0.0122,
"percent_delta": 0.0349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.072,
"after": 0.0,
"delta": -1.072,
"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.165 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.730 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.610 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.350 | - |
| predicted_R | 0.585 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.398 | - |
| predicted_SO | 1.072 | - |
Final model 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.044 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.375 | 2.645 |
| predicted_AVG | 0.238 | 0.003 |
| predicted_BB | 1.245 | 0.635 |
| predicted_H | 1.526 | 0.646 |
| predicted_HBP | 0.086 | - |
| predicted_HR | 0.261 | 0.111 |
| predicted_OBP | 0.359 | 0.010 |
| predicted_R | 0.855 | 0.270 |
| predicted_RBI | 0.977 | 0.457 |
| predicted_SLG | 0.396 | -0.003 |
| predicted_SO | 2.000 | 0.928 |
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.000 | 0.000 |
| predicted_AB | 6.375 | 0.000 |
| predicted_AVG | 0.237 | -0.000 |
| predicted_BB | 1.248 | 0.003 |
| predicted_H | 1.513 | -0.013 |
| predicted_HBP | 0.086 | 0.000 |
| predicted_HR | 0.259 | -0.002 |
| predicted_OBP | 0.362 | 0.003 |
| predicted_R | 0.846 | -0.009 |
| predicted_RBI | 0.967 | -0.010 |
| predicted_SLG | 0.392 | -0.003 |
| predicted_SO | 1.995 | -0.005 |
AB rounded to 6 (raw=6.37), rates preserved: AVG=0.237 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 6.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 | 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.209 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.375 |
| predicted_AVG | 0.167 | -0.070 |
| predicted_BB | 1.000 | -0.248 |
| predicted_H | 1.000 | -0.513 |
| predicted_HR | 0.000 | -0.259 |
| predicted_OBP | 0.286 | -0.076 |
| predicted_R | 1.000 | 0.154 |
| predicted_RBI | 1.000 | 0.033 |
| predicted_SLG | 0.167 | -0.225 |
| predicted_SO | 2.000 | 0.005 |
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 | -3.000 |
| BB | 0.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 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.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 | 0.000 | 1.000 | 0.000 | 5.000 | 7.000 | 0.1176 | 0.3182 | 0.1176 | 0.1177 | 0.0000 | 0.0588 | 0.2941 | 0.4118 |
| last_10 | 0.20 | 10 | - | 35.000 | 8.000 | 0.000 | 0.000 | 2.000 | 3.000 | 5.000 | 10.000 | 13.000 | 0.2286 | 0.4000 | 0.4000 | 0.2286 | 0.0571 | 0.0857 | 0.2857 | 0.3714 |
| season | 0.60 | 62 | - | 878.000 | 251.000 | 39.000 | 0.000 | 44.000 | 193.000 | 138.000 | 144.000 | 253.000 | 0.2859 | 0.3824 | 0.4806 | 0.2859 | 0.0501 | 0.2198 | 0.1640 | 0.2882 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2650 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.7130 |
| predicted_AVG | 0.2410 |
| predicted_BB | 2.0460 |
| predicted_H | 2.3410 |
| predicted_HBP | 0.0860 |
| predicted_HR | 0.4010 |
| predicted_OBP | 0.3714 |
| predicted_R | 1.1950 |
| predicted_RBI | 1.5540 |
| predicted_SLG | 0.3923 |
| predicted_SO | 3.1720 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1650 | 0.2650 | 0.2092 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7300 | 9.7130 | 6.3746 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2410 | 0.2377 | model_form_blend |
| predicted_BB | 0.6100 | 2.0460 | 1.2447 | model_form_blend |
| predicted_H | 0.8800 | 2.3410 | 1.5258 | model_form_blend |
| predicted_HBP | - | 0.0860 | 0.0860 | form_only |
| predicted_HR | 0.1500 | 0.4010 | 0.2609 | model_form_blend |
| predicted_OBP | 0.3500 | 0.3714 | 0.3595 | model_form_blend |
| predicted_R | 0.5850 | 1.1950 | 0.8546 | model_form_blend |
| predicted_RBI | 0.5200 | 1.5540 | 0.9770 | model_form_blend |
| predicted_SLG | 0.3980 | 0.3923 | 0.3955 | model_form_blend |
| predicted_SO | 1.0720 | 3.1720 | 2.0002 | 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 | 236 |
| Season rows before report date | 236 |
| Report year | 2026 |
| Profile rows used | 236 |
| 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 | 0 |
| SF | 0 |
| HBP | 1 |
| 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 | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| 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 | 20260607_TB@MIA |
| game_type | full |
| mlbID | 666018 |
| playerID | 666018 |
| playerName | Jonathan Aranda |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.7 |
| sl_bb_percent | 14.8 |
| sl_woba | 0.367 |
| sl_xwoba | 0.377 |
| sl_xba | 0.264 |
| sl_xslg | 0.482 |
| sl_sweet_spot_percent | 38.5 |
| sl_barrel_batted_rate | 12.4 |
| sl_hard_hit_percent | 46.6 |
| sl_exit_velocity_avg | 90.8 |
| sl_launch_angle_avg | 15.5 |
| sl_whiff_percent | 21.9 |
| 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.079 | 0.000 | 0.000 | Hitting_2B | 0.079 | 0.000 | -0.079 | 0.000 |
| predicted_3B | 0.021 | 0.000 | 0.000 | Hitting_3B | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_AB | 3.705 | 3.000 | 6.000 | Hitting_AB | 3.686 | 3.000 | -0.686 | 0.000 |
| predicted_AVG | 0.211 | 0.333 | 0.167 | Hitting_AVG | 0.188 | 0.000 | 0.146 | 0.333 |
| predicted_BB | 0.326 | 0.000 | 1.000 | Hitting_BB | 0.325 | 1.000 | -0.325 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.110 | 1.000 | -0.110 | -1.000 |
| predicted_H | 0.650 | 1.000 | 1.000 | Hitting_H | 0.691 | 0.000 | 0.309 | 1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.079 | 0.000 | -0.079 | 0.000 |
| predicted_OBP | 0.289 | 0.333 | 0.286 | Hitting_OBP | 0.265 | 0.250 | 0.069 | 0.083 |
| predicted_R | 0.416 | 0.000 | 1.000 | Hitting_R | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 1.000 | Hitting_RBI | 0.393 | 0.000 | -0.393 | 0.000 |
| predicted_SLG | 0.357 | 0.333 | 0.167 | Hitting_SLG | 0.284 | 0.000 | 0.049 | 0.333 |
| predicted_SO | 0.732 | 0.000 | 1.000 | Hitting_SO | 0.728 | 2.000 | -0.728 | -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_H: 0.6500 -> 1.0000 (boost 0.3500, better) |
| Biggest Deboost | predicted_SO: 0.7320 -> 0.0000 (deboost -0.7320, 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 | 8 | 7 | 1 | 6 | 2 | predicted_AB: 3.7050 -> 6.1024 (boost 2.3974, better) | predicted_AVG: 0.2110 -> 0.1947 (deboost -0.0163, 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.2866 -> 0.2572 (deboost -0.0294, 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_RBI: 0.6352 -> 1.0000 (boost 0.3648, better) | predicted_SO: 1.3487 -> 1.0000 (deboost -0.3487, better) | AB rounded to 6 (raw=6.10), rates preserved: AVG=0.173 HR/AB=0.045 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7583 -> 1.0000 (boost 0.2417, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2572 -> 0.2860 (boost 0.0288, better) | predicted_SLG: 0.3374 -> 0.1670 (deboost -0.1704, 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: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.3374 (boost 0.1704, better) | predicted_OBP: 0.2860 -> 0.2572 (deboost -0.0288, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656775",
"player_name": "Cedric Mullins",
"position": "CF",
"team": "TB",
"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.079,
"predicted_3B": 0.021,
"predicted_AB": 3.705,
"predicted_AVG": 0.211,
"predicted_BB": 0.326,
"predicted_H": 0.65,
"predicted_HR": 0.13,
"predicted_OBP": 0.289,
"predicted_R": 0.416,
"predicted_RBI": 0.35,
"predicted_SLG": 0.357,
"predicted_SO": 0.732
},
"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.1234,
"predicted_3B": 0.0263,
"predicted_AB": 6.1024,
"predicted_AVG": 0.1947,
"predicted_BB": 0.6901,
"predicted_H": 1.0646,
"predicted_HBP": 0.281,
"predicted_HR": 0.2776,
"predicted_OBP": 0.2866,
"predicted_R": 0.7665,
"predicted_RBI": 0.6421,
"predicted_SLG": 0.3554,
"predicted_SO": 1.3522
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.079,
"after": 0.1234,
"delta": 0.0444,
"percent_delta": 0.562,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.021,
"after": 0.0263,
"delta": 0.0053,
"percent_delta": 0.2524,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.705,
"after": 6.1024,
"delta": 2.3974,
"percent_delta": 0.6471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.211,
"after": 0.1947,
"delta": -0.0163,
"percent_delta": -0.0773,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.326,
"after": 0.6901,
"delta": 0.3641,
"percent_delta": 1.1169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 1.0646,
"delta": 0.4146,
"percent_delta": 0.6378,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2776,
"delta": 0.1476,
"percent_delta": 1.1354,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.289,
"after": 0.2866,
"delta": -0.0024,
"percent_delta": -0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.416,
"after": 0.7665,
"delta": 0.3505,
"percent_delta": 0.8425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.6421,
"delta": 0.2921,
"percent_delta": 0.8346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3554,
"delta": -0.0016,
"percent_delta": -0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.732,
"after": 1.3522,
"delta": 0.6202,
"percent_delta": 0.8473,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.705,
"after": 6.1024,
"delta": 2.3974,
"percent_delta": 0.6471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.211,
"after": 0.1947,
"delta": -0.0163,
"percent_delta": -0.0773,
"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": 9,
"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.1234,
"predicted_3B": 0.0263,
"predicted_AB": 6.1024,
"predicted_AVG": 0.173,
"predicted_BB": 0.6919,
"predicted_H": 1.0556,
"predicted_HBP": 0.281,
"predicted_HR": 0.2758,
"predicted_OBP": 0.2572,
"predicted_R": 0.7583,
"predicted_RBI": 0.6352,
"predicted_SLG": 0.3374,
"predicted_SO": 1.3487
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1234,
"after": 0.1234,
"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": 6.1024,
"after": 6.1024,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1947,
"after": 0.173,
"delta": -0.0217,
"percent_delta": -0.1115,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6901,
"after": 0.6919,
"delta": 0.0018,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0646,
"after": 1.0556,
"delta": -0.009,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.281,
"after": 0.281,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2776,
"after": 0.2758,
"delta": -0.0018,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2866,
"after": 0.2572,
"delta": -0.0294,
"percent_delta": -0.1026,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7665,
"after": 0.7583,
"delta": -0.0082,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6421,
"after": 0.6352,
"delta": -0.0069,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3554,
"after": 0.3374,
"delta": -0.018,
"percent_delta": -0.0506,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3522,
"after": 1.3487,
"delta": -0.0035,
"percent_delta": -0.0026,
"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.2866,
"after": 0.2572,
"delta": -0.0294,
"percent_delta": -0.1026,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.10), rates preserved: AVG=0.173 HR/AB=0.045",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.1234,
"after": 0.0,
"delta": -0.1234,
"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": 6.1024,
"after": 6.0,
"delta": -0.1024,
"percent_delta": -0.0168,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6919,
"after": 1.0,
"delta": 0.3081,
"percent_delta": 0.4453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0556,
"after": 1.0,
"delta": -0.0556,
"percent_delta": -0.0527,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.281,
"after": 0.0,
"delta": -0.281,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2758,
"after": 0.0,
"delta": -0.2758,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6352,
"after": 1.0,
"delta": 0.3648,
"percent_delta": 0.5743,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3487,
"after": 1.0,
"delta": -0.3487,
"percent_delta": -0.2585,
"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_RBI",
"before": 0.6352,
"after": 1.0,
"delta": 0.3648,
"percent_delta": 0.5743,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3487,
"after": 1.0,
"delta": -0.3487,
"percent_delta": -0.2585,
"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": 6.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": 6.0,
"after": 6.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.7583,
"after": 1.0,
"delta": 0.2417,
"percent_delta": 0.3187,
"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.7583,
"after": 1.0,
"delta": 0.2417,
"percent_delta": 0.3187,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.173,
"after": 0.167,
"delta": -0.006,
"percent_delta": -0.0347,
"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.2572,
"after": 0.286,
"delta": 0.0288,
"percent_delta": 0.112,
"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.3374,
"after": 0.167,
"delta": -0.1704,
"percent_delta": -0.505,
"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.2572,
"after": 0.286,
"delta": 0.0288,
"percent_delta": 0.112,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3374,
"after": 0.167,
"delta": -0.1704,
"percent_delta": -0.505,
"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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.173,
"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.2572,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3374,
"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.167,
"after": 0.173,
"delta": 0.006,
"percent_delta": 0.0358,
"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.286,
"after": 0.2572,
"delta": -0.0288,
"percent_delta": -0.1007,
"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.167,
"after": 0.3374,
"delta": 0.1704,
"percent_delta": 1.0203,
"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.167,
"after": 0.3374,
"delta": 0.1704,
"percent_delta": 1.0203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2572,
"delta": -0.0288,
"percent_delta": -0.1007,
"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.079,
"after": 0.0,
"delta": -0.079,
"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": 3.705,
"after": 3.0,
"delta": -0.705,
"percent_delta": -0.1903,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.211,
"after": 0.173,
"delta": -0.038,
"percent_delta": -0.1801,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.326,
"after": 0.0,
"delta": -0.326,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 1.0,
"delta": 0.35,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "better",
"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.289,
"after": 0.2572,
"delta": -0.0318,
"percent_delta": -0.11,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.416,
"after": 0.0,
"delta": -0.416,
"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.357,
"after": 0.3374,
"delta": -0.0196,
"percent_delta": -0.0549,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.732,
"after": 0.0,
"delta": -0.732,
"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_H",
"before": 0.65,
"after": 1.0,
"delta": 0.35,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.732,
"after": 0.0,
"delta": -0.732,
"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.079 | - |
| predicted_3B | 0.021 | - |
| predicted_AB | 3.705 | - |
| predicted_AVG | 0.211 | - |
| predicted_BB | 0.326 | - |
| predicted_H | 0.650 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.289 | - |
| predicted_R | 0.416 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.357 | - |
| predicted_SO | 0.732 | - |
Final model 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.123 | 0.044 |
| predicted_3B | 0.026 | 0.005 |
| predicted_AB | 6.102 | 2.397 |
| predicted_AVG | 0.195 | -0.016 |
| predicted_BB | 0.690 | 0.364 |
| predicted_H | 1.065 | 0.415 |
| predicted_HBP | 0.281 | - |
| predicted_HR | 0.278 | 0.148 |
| predicted_OBP | 0.287 | -0.002 |
| predicted_R | 0.766 | 0.350 |
| predicted_RBI | 0.642 | 0.292 |
| predicted_SLG | 0.355 | -0.002 |
| predicted_SO | 1.352 | 0.620 |
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.123 | 0.000 |
| predicted_3B | 0.026 | 0.000 |
| predicted_AB | 6.102 | 0.000 |
| predicted_AVG | 0.173 | -0.022 |
| predicted_BB | 0.692 | 0.002 |
| predicted_H | 1.056 | -0.009 |
| predicted_HBP | 0.281 | 0.000 |
| predicted_HR | 0.276 | -0.002 |
| predicted_OBP | 0.257 | -0.029 |
| predicted_R | 0.758 | -0.008 |
| predicted_RBI | 0.635 | -0.007 |
| predicted_SLG | 0.337 | -0.018 |
| predicted_SO | 1.349 | -0.004 |
AB rounded to 6 (raw=6.10), rates preserved: AVG=0.173 HR/AB=0.045
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.123 |
| predicted_3B | 0.000 | -0.026 |
| predicted_AB | 6.000 | -0.102 |
| predicted_AVG | 0.167 | -0.006 |
| predicted_BB | 1.000 | 0.308 |
| predicted_H | 1.000 | -0.056 |
| predicted_HR | 0.000 | -0.276 |
| predicted_OBP | 0.286 | 0.029 |
| predicted_R | 1.000 | 0.242 |
| predicted_RBI | 1.000 | 0.365 |
| predicted_SLG | 0.167 | -0.170 |
| predicted_SO | 1.000 | -0.349 |
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 | -3.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 | 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 | - | 15.000 | 2.000 | 0.000 | 0.000 | 2.000 | 2.000 | 3.000 | 3.000 | 5.000 | 0.1333 | 0.3158 | 0.5333 | 0.1333 | 0.1333 | 0.1333 | 0.2000 | 0.3333 |
| last_10 | 0.20 | 9 | - | 32.000 | 5.000 | 1.000 | 0.000 | 2.000 | 3.000 | 4.000 | 6.000 | 8.000 | 0.1562 | 0.3077 | 0.3750 | 0.1562 | 0.0625 | 0.0938 | 0.1875 | 0.2500 |
| season | 0.60 | 54 | - | 704.000 | 132.000 | 15.000 | 4.000 | 15.000 | 75.000 | 79.000 | 62.000 | 139.000 | 0.1875 | 0.2646 | 0.2841 | 0.1875 | 0.0213 | 0.1065 | 0.0881 | 0.1974 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1800 |
| predicted_3B | 0.0330 |
| predicted_AB | 9.1630 |
| predicted_AVG | 0.1739 |
| predicted_BB | 1.1550 |
| predicted_H | 1.5940 |
| predicted_HBP | 0.2810 |
| predicted_HR | 0.4660 |
| predicted_OBP | 0.2836 |
| predicted_R | 1.2140 |
| predicted_RBI | 1.0150 |
| predicted_SLG | 0.3533 |
| predicted_SO | 2.1440 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0790 | 0.1800 | 0.1234 | model_form_blend |
| predicted_3B | 0.0210 | 0.0330 | 0.0263 | model_form_blend |
| predicted_AB | 3.7050 | 9.1630 | 6.1024 | model_form_blend |
| predicted_AVG | 0.2110 | 0.1739 | 0.1947 | model_form_blend |
| predicted_BB | 0.3260 | 1.1550 | 0.6901 | model_form_blend |
| predicted_H | 0.6500 | 1.5940 | 1.0646 | model_form_blend |
| predicted_HBP | - | 0.2810 | 0.2810 | form_only |
| predicted_HR | 0.1300 | 0.4660 | 0.2776 | model_form_blend |
| predicted_OBP | 0.2890 | 0.2836 | 0.2866 | model_form_blend |
| predicted_R | 0.4160 | 1.2140 | 0.7665 | model_form_blend |
| predicted_RBI | 0.3500 | 1.0150 | 0.6421 | model_form_blend |
| predicted_SLG | 0.3570 | 0.3533 | 0.3554 | model_form_blend |
| predicted_SO | 0.7320 | 2.1440 | 1.3522 | 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 | 191 |
| Season rows before report date | 191 |
| Report year | 2026 |
| Profile rows used | 190 |
| 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.188 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 1 |
| 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 | 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 | CF |
| gameID | 20260607_TB@MIA |
| game_type | full |
| mlbID | 656775 |
| playerID | 656775 |
| playerName | Cedric Mullins |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-07 |
| sl_k_percent | 17.7 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.258 |
| sl_xwoba | 0.258 |
| sl_xba | 0.182 |
| sl_xslg | 0.301 |
| sl_sweet_spot_percent | 28.1 |
| sl_barrel_batted_rate | 3.3 |
| sl_hard_hit_percent | 30.5 |
| sl_exit_velocity_avg | 88.2 |
| sl_launch_angle_avg | 29.2 |
| sl_whiff_percent | 20.1 |
| 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_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.577 | 3.000 | 0.423 | -2.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 0.692 | 3.000 | 2.308 | 0.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 1.038 | 2.000 | 4.962 | 4.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 1.031 | 2.000 | 3.969 | 3.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.269 | 1.000 | 0.731 | 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": "693855",
"player_name": "Ian Seymour",
"position": "Starter",
"team": "TB",
"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": 3.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.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": 3.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.0,
"predicted_R": 3.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": 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.0,
"after": 5.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": 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.0,
"after": 5.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 | 3.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.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 | 7.200 | 5.000 | 6.000 | 7.000 | 6.000 | 1.000 | 5.8696 | 1.6957 | 0.6522 | 0.7826 | 0.9130 | 0.7826 | 0.1304 |
| last_10 | 0.35 | 10 | 13.100 | 8.000 | 10.000 | 8.000 | 13.000 | 3.000 | 5.4000 | 1.3500 | 0.6000 | 0.7500 | 0.6000 | 0.9750 | 0.2250 |
| season | 0.20 | 25 | 31.000 | 13.000 | 22.000 | 15.000 | 33.000 | 4.000 | 3.7742 | 1.1935 | 0.4194 | 0.7097 | 0.4839 | 1.0645 | 0.1290 |
| Metric | Value |
|---|---|
| predicted_BB | 1.7130 |
| predicted_ER | 1.6590 |
| predicted_ERA | 4.8713 |
| predicted_H | 2.5950 |
| predicted_HR | 0.4670 |
| predicted_IP | 3.0000 |
| predicted_SO | 2.8160 |
| predicted_WHIP | 1.4058 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.7130 | 1.3280 | model_form_blend |
| predicted_ER | 3.0000 | 1.6590 | 2.3831 | model_form_blend |
| predicted_ERA | - | 4.8713 | 4.8713 | form_only |
| predicted_H | 6.0000 | 2.5950 | 4.4336 | model_form_blend |
| predicted_HR | 1.0000 | 0.4670 | 0.7548 | model_form_blend |
| predicted_IP | 5.0000 | 3.0000 | 4.1000 | model_form_blend |
| predicted_SO | 2.0000 | 2.8160 | 2.3754 | model_form_blend |
| predicted_WHIP | - | 1.4058 | 1.4058 | 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 | 5.0 |
| H | 6 |
| R | 3 |
| ER | 3 |
| BB | 1 |
| SO | 2 |
| HR | 1 |
| BF | 22 |
| Pitches | 94 |
| 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 | 11 |
| Pitching_ER | 3 |
| Pitching_ERA | 5.23 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 2.0 |
| Pitching_Pitches | 40 |
| Pitching_R | 3 |
| Pitching_SO | 1 |
| Pitching_Strikes | 25 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260602_DET@TB |
| game_type | full |
| mlbID | 693855 |
| playerID | 693855 |
| playerName | Ian Seymour |
| pos | P |
| started | False |
| startingPosition | P |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-02 |
| sl_k_percent | 24.6 |
| sl_bb_percent | 11.2 |
| sl_woba | 0.318 |
| sl_xwoba | 0.312 |
| sl_sweet_spot_percent | 38.8 |
| sl_barrel_batted_rate | 9.4 |
| sl_hard_hit_percent | 36.5 |
| sl_whiff_percent | 29.3 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 78.2851495 |
| sl_avg_hyper_speed | 93.525814375 |
| 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 | 0.000 | -0.407 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.222 | 0.000 | -0.222 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.556 | 0.000 | -0.556 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.904 | 1.000 | 0.196 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.074 | 0.000 | -1.074 | 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": "641329",
"player_name": "Bryan Baker",
"position": "Middle Reliever",
"team": "TB",
"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 | 2.000 | 3.000 | 5.000 | 0.000 | 0.0000 | 1.0000 | 0.0000 | 0.4000 | 0.6000 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 2.000 | 5.000 | 7.000 | 12.000 | 0.000 | 1.8621 | 1.2414 | 0.2069 | 0.5172 | 0.7241 | 1.2414 | 0.0000 |
| season | 0.20 | 27 | 25.100 | 6.000 | 15.000 | 11.000 | 29.000 | 1.000 | 2.1316 | 1.0263 | 0.2368 | 0.5921 | 0.4342 | 1.1447 | 0.0395 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4870 |
| predicted_ER | 0.3020 |
| predicted_ERA | 2.7204 |
| predicted_H | 0.7180 |
| predicted_HR | 0.0740 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0240 |
| predicted_WHIP | 1.2058 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4870 | 0.2137 | model_form_blend |
| predicted_ER | 0.0000 | 0.3020 | 0.1325 | model_form_blend |
| predicted_ERA | - | 2.7204 | 2.7204 | form_only |
| predicted_H | 0.0000 | 0.7180 | 0.3151 | model_form_blend |
| predicted_HR | 0.0000 | 0.0740 | 0.0325 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0240 | 0.4493 | model_form_blend |
| predicted_WHIP | - | 1.2058 | 1.2058 | 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.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 | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.13 |
| 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 | 13 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260602_DET@TB |
| game_type | full |
| mlbID | 641329 |
| playerID | 641329 |
| playerName | Bryan Baker |
| pos | P |
| started | False |
| startingPosition | P |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-02 |
| sl_k_percent | 28.4 |
| sl_bb_percent | 10.8 |
| sl_woba | 0.241 |
| sl_xwoba | 0.268 |
| sl_sweet_spot_percent | 33.9 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 30.6 |
| sl_whiff_percent | 34.3 |
| sl_swing_percent | 51.3 |
| sl_avg_best_speed | 73.869190645 |
| sl_avg_hyper_speed | 92.856241129 |
| 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.533 | 1.000 | -0.533 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.467 | 2.000 | -0.467 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.800 | 1.000 | -0.800 | -1.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.827 | 1.000 | 0.373 | 0.200 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.267 | 2.000 | -0.267 | -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.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": "664076",
"player_name": "Garrett Cleavinger",
"position": "Middle Reliever",
"team": "TB",
"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.2,
"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.2,
"delta": 0.2,
"percent_delta": 0.2,
"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.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": 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.2,
"delta": 0.2,
"percent_delta": 0.2,
"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.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 | 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 | 3.000 | 4.000 | 3.000 | 7.000 | 0.000 | 5.0625 | 1.3125 | 0.5625 | 0.7500 | 0.5625 | 1.3125 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 5.000 | 8.000 | 4.000 | 14.000 | 1.000 | 4.6552 | 1.2414 | 0.5172 | 0.8276 | 0.4138 | 1.4483 | 0.1035 |
| season | 0.20 | 15 | 13.100 | 7.000 | 12.000 | 8.000 | 19.000 | 1.000 | 4.7250 | 1.5000 | 0.5250 | 0.9000 | 0.6000 | 1.4250 | 0.0750 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4170 |
| predicted_ER | 0.5040 |
| predicted_ERA | 4.5321 |
| predicted_H | 0.9060 |
| predicted_HR | 0.1090 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0890 |
| predicted_WHIP | 1.3230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4170 | 0.1556 | model_form_blend |
| predicted_ER | 0.0000 | 0.5040 | 0.1881 | model_form_blend |
| predicted_ERA | - | 4.5321 | 4.5321 | form_only |
| predicted_H | 0.0000 | 0.9060 | 0.3381 | model_form_blend |
| predicted_HR | 0.0000 | 0.1090 | 0.0407 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0890 | 1.0332 | model_form_blend |
| predicted_WHIP | - | 1.3230 | 1.3230 | 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.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 5 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 4.73 |
| 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 | 23 |
| Pitching_R | 2 |
| Pitching_SO | 2 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L, BS |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260607_TB@MIA |
| game_type | full |
| mlbID | 664076 |
| playerID | 664076 |
| playerName | Garrett Cleavinger |
| pos | P |
| started | False |
| startingPosition | P |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-07 |
| sl_k_percent | 31.7 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.329 |
| sl_xwoba | 0.291 |
| sl_sweet_spot_percent | 40.6 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 46.9 |
| sl_whiff_percent | 27.1 |
| sl_swing_percent | 46.7 |
| sl_avg_best_speed | 76.756195625 |
| sl_avg_hyper_speed | 94.339726774 |
| 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.222 | 1.000 | -0.222 | -1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.296 | 0.000 | 0.704 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.667 | 1.000 | 0.333 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.881 | 1.000 | 0.119 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.778 | 2.000 | 0.222 | -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": "687330",
"player_name": "Kevin Kelly",
"position": "Middle Reliever",
"team": "TB",
"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": 1.0,
"predicted_HR": 1.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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.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": 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": 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": 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": 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 | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 1.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 | 2.000 | 5.000 | 2.000 | 4.000 | 1.000 | 3.8571 | 1.5000 | 0.4286 | 1.0714 | 0.4286 | 0.8571 | 0.2143 |
| last_10 | 0.35 | 10 | 10.000 | 2.000 | 8.000 | 2.000 | 7.000 | 1.000 | 1.8000 | 1.0000 | 0.2000 | 0.8000 | 0.2000 | 0.7000 | 0.1000 |
| season | 0.20 | 27 | 28.000 | 8.000 | 18.000 | 6.000 | 21.000 | 2.000 | 2.5714 | 0.8571 | 0.2857 | 0.6429 | 0.2143 | 0.7500 | 0.0714 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3340 |
| predicted_ER | 0.3980 |
| predicted_ERA | 3.5845 |
| predicted_H | 0.9220 |
| predicted_HR | 0.1430 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8540 |
| predicted_WHIP | 1.2560 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3340 | 0.1501 | model_form_blend |
| predicted_ER | 1.0000 | 0.3980 | 0.7295 | model_form_blend |
| predicted_ERA | - | 3.5845 | 3.5845 | form_only |
| predicted_H | 1.0000 | 0.9220 | 0.9650 | model_form_blend |
| predicted_HR | 1.0000 | 0.1430 | 0.6149 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8540 | 0.9344 | model_form_blend |
| predicted_WHIP | - | 1.2560 | 1.2560 | 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 | 1 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 1 |
| HR | 1 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.57 |
| 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 | 21 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260606_TB@MIA |
| game_type | full |
| mlbID | 687330 |
| playerID | 687330 |
| playerName | Kevin Kelly |
| pos | P |
| started | False |
| startingPosition | P |
| team | TB |
| teamID | 27 |
| game_date | 2026-06-06 |
| sl_k_percent | 20.4 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.226 |
| sl_xwoba | 0.298 |
| sl_sweet_spot_percent | 29.3 |
| sl_barrel_batted_rate | 8.2 |
| sl_hard_hit_percent | 44.0 |
| sl_whiff_percent | 19.1 |
| sl_swing_percent | 47.0 |
| sl_avg_best_speed | 79.981456757 |
| sl_avg_hyper_speed | 94.760421233 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | CIN 3 - 2 SD | CIN | 0.560 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | CIN 3 - 2 SD | CIN | - | 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.8000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5604 |
| 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.458 | 4.270 | - | Base ML historical model prediction |
| 2 | variance_applied | 7 | 5 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 2 | 0.5604 | 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 | 3 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4313197026022305,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.008457249070632,
"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": 5,
"pre_simulation_expected_total_runs": 9.8,
"low_score_model_expected_total_runs": 9.8,
"final_simulation_total_runs": 5,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 45,
"near_bucket_sample_size": 45,
"medium_bucket_sample_size": 114,
"wide_bucket_sample_size": 143,
"global_sample_size": 143,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5556,
"bayesian_hit_rate": 0.5397,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.7143,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6083,
"calibrated_pick_probability": 0.5604,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "SD",
"games": 64,
"wins": 33,
"losses": 31,
"win_pct": 0.515625,
"runs_scored": 241,
"runs_allowed": 259,
"run_differential": -18,
"run_differential_per_game": -0.28125,
"available": true
},
"away": {
"team": "CIN",
"games": 64,
"wins": 31,
"losses": 33,
"win_pct": 0.484375,
"runs_scored": 275,
"runs_allowed": 326,
"run_differential": -51,
"run_differential_per_game": -0.796875,
"available": true
},
"run_differential_edge_per_game": 0.5156,
"win_pct_edge": 0.0312,
"quality_edge": 0.5625,
"margin_adjustment": 0.2362,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.443,
"home_runs": 2.169,
"home_win_probability": 0.3917
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "CIN",
"guardrail_predicted_team": "CIN",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "CIN",
"output_opponent_team": "SD",
"final_score_winner": "CIN",
"pre_simulation_winner": "CIN",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "CIN 3 - 2 SD",
"winner": "CIN"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "CIN 3 - 2 SD",
"winner": "CIN"
},
"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": "SD",
"games": 64,
"wins": 33,
"losses": 31,
"win_pct": 0.515625,
"runs_scored": 241,
"runs_allowed": 259,
"run_differential": -18,
"run_differential_per_game": -0.28125,
"available": true
},
"away": {
"team": "CIN",
"games": 64,
"wins": 31,
"losses": 33,
"win_pct": 0.484375,
"runs_scored": 275,
"runs_allowed": 326,
"run_differential": -51,
"run_differential_per_game": -0.796875,
"available": true
}
}
}{
"applied": false,
"raw_margin": -1.2739,
"final_margin": -1.2739,
"margin_cap": 1.5,
"season_quality_edge": 0.5625,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.560411,
"final_confidence": 0.560411,
"confidence_cap": 0.63,
"score_gap": 1.2739,
"calibration_sample_size": 45,
"calibration_empirical_hit_rate": 0.5556,
"calibration_bayesian_hit_rate": 0.5397,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.5625,
"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": 2,
"score_text": "CIN 3 - 2 SD",
"winner": "CIN"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "CIN 3 - 2 SD",
"winner": "CIN"
},
"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": 3,
"home_runs": 2,
"confidence": 0.560411,
"home_win_probability": 0.439589,
"away_win_probability": 0.560411,
"predicted_score_text": "CIN 3 - 2 SD",
"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": "CIN",
"original_runs": 3,
"run_delta": 0.25,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 50.0,
"quality": 0.14349145232676325,
"contact": -0.1716272802208715,
"power": 0.0693724419504806,
"discipline": 0.03287659881802295,
"xwoba": 0.31639999999999996,
"recent_xwoba": 0.31639999999999996,
"barrel": 8.954,
"ab_hard_contact": -0.164806399085623,
"ab_bat_speed": 69.99377822536901,
"ab_strikeout_rate": 0.25154163110020683,
"available_players": 8,
"top_players": [
{
"player_id": "701398",
"player_name": "Sal Stewart",
"position": "1B",
"weight": 7.0,
"quality": 0.7385489432197507,
"contact": 0.6018074677887808,
"power": 1.0874889314898706,
"discipline": 0.3886125919270571,
"xwoba": 0.359,
"recent_xwoba": 0.359,
"barrel": 15.2,
"ab_hard_contact": 0.4351119631307455,
"ab_bat_speed": 70.50775943396226,
"ab_strikeout_rate": 0.1989517819706499,
"available": 1.0
},
{
"player_id": "668709",
"player_name": "JJ Bleday",
"position": "LF",
"weight": 6.0,
"quality": 0.5373639283408385,
"contact": 1.2668806787681157,
"power": 1.2810657357541213,
"discipline": 0.4861596119929453,
"xwoba": 0.389,
"recent_xwoba": 0.389,
"barrel": 12.4,
"ab_hard_contact": 0.6736956674633805,
"ab_bat_speed": 71.79647518518519,
"ab_strikeout_rate": 0.15933333333333333,
"available": 1.0
},
{
"player_id": "663993",
"player_name": "Nathaniel Lowe",
"position": "DH",
"weight": 5.0,
"quality": 0.5102563842585809,
"contact": 0.9069557471014497,
"power": 1.261760859415405,
"discipline": 0.1844902998236332,
"xwoba": 0.377,
"recent_xwoba": 0.377,
"barrel": 14.3,
"ab_hard_contact": 0.5868362359271401,
"ab_bat_speed": 72.97842399691359,
"ab_strikeout_rate": 0.26157407407407407,
"available": 1.0
},
{
"player_id": "682622",
"player_name": "Noelvi Marte",
"position": "RF",
"weight": 5.0,
"quality": -0.20878378452484922,
"contact": -1.7998019480519485,
"power": -1.7580090220201883,
"discipline": -0.3791428571428573,
"xwoba": 0.222,
"recent_xwoba": 0.222,
"barrel": 0.0,
"ab_hard_contact": -1.217323297546624,
"ab_bat_speed": 70.1852904040404,
"ab_strikeout_rate": 0.4393939393939394,
"available": 1.0
},
{
"player_id": "553993",
"player_name": "Eugenio Suárez",
"position": "3B",
"weight": 6.0,
"quality": -0.4184698036047273,
"contact": -1.2303617132844296,
"power": -0.5777741378629196,
"discipline": -0.45764580672626665,
"xwoba": 0.28,
"recent_xwoba": 0.28,
"barrel": 8.3,
"ab_hard_contact": -0.2632922810679101,
"ab_bat_speed": 69.28642720306513,
"ab_strikeout_rate": 0.2867816091954023,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "621111",
"player_name": "Walker Buehler",
"quality": -0.35080134403570934,
"contact": -0.3299590632557038,
"command": -0.445859382297788,
"movement": -0.38396728065194563,
"xwoba": 0.337,
"whiff": 19.7,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "SD",
"original_runs": 2,
"run_delta": 0.3134,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 47.0,
"quality": 0.1654721970731113,
"contact": -0.10722671929747102,
"power": 0.016803745872944916,
"discipline": -0.057234868971051525,
"xwoba": 0.30627659574468086,
"recent_xwoba": 0.30627659574468086,
"barrel": 8.548936170212768,
"ab_hard_contact": 0.02235657905971132,
"ab_bat_speed": 70.9291841950346,
"ab_strikeout_rate": 0.22842881621109792,
"available_players": 7,
"top_players": [
{
"player_id": "666023",
"player_name": "Freddy Fermin",
"position": "C",
"weight": 5.0,
"quality": -0.4964976127792276,
"contact": -1.3457069357803242,
"power": -1.3210490571978948,
"discipline": 0.0622975430274281,
"xwoba": 0.257,
"recent_xwoba": 0.257,
"barrel": 2.4,
"ab_hard_contact": -0.7329811439578932,
"ab_bat_speed": 67.52339285714285,
"ab_strikeout_rate": 0.20919540229885056,
"available": 1.0
},
{
"player_id": "665487",
"player_name": "Fernando Tatis Jr.",
"position": "2B",
"weight": 7.0,
"quality": 0.6746494346956503,
"contact": 0.8961683272296539,
"power": 0.5908439350484843,
"discipline": -0.12068837335504005,
"xwoba": 0.349,
"recent_xwoba": 0.349,
"barrel": 10.3,
"ab_hard_contact": 0.7978310819220684,
"ab_bat_speed": 72.76390277777777,
"ab_strikeout_rate": 0.22403846153846155,
"available": 1.0
},
{
"player_id": "669392",
"player_name": "Samad Taylor",
"position": "LF",
"weight": 3.0,
"quality": -0.0,
"contact": -1.0704285714285715,
"power": -1.8254285714285716,
"discipline": 1.659142857142857,
"xwoba": 0.304,
"recent_xwoba": 0.304,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26396983685248,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
},
{
"player_id": "701538",
"player_name": "Jackson Merrill",
"position": "CF",
"weight": 7.0,
"quality": 0.3492987017609413,
"contact": 0.201579724006211,
"power": 0.5823302259856027,
"discipline": -0.27093562610229294,
"xwoba": 0.322,
"recent_xwoba": 0.322,
"barrel": 10.3,
"ab_hard_contact": 0.6069854720930102,
"ab_bat_speed": 71.57640972222222,
"ab_strikeout_rate": 0.253,
"available": 1.0
},
{
"player_id": "664034",
"player_name": "Ty France",
"position": "1B",
"weight": 5.0,
"quality": 0.15548760127801384,
"contact": 0.34607511972049676,
"power": 0.8614433914663717,
"discipline": -0.7343641975308642,
"xwoba": 0.323,
"recent_xwoba": 0.323,
"barrel": 12.1,
"ab_hard_contact": 0.0063916388512514286,
"ab_bat_speed": 69.51782840722495,
"ab_strikeout_rate": 0.3,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "671096",
"player_name": "Andrew Abbott",
"quality": -0.4713289052339212,
"contact": -0.37297842474435405,
"command": -0.7070022394406453,
"movement": -0.5157729232936935,
"xwoba": 0.345,
"whiff": 21.2,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"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": "CIN 3 - 2 SD",
"confidence": 0.560411,
"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": 3,
"home_runs": 2,
"score_text": "CIN 3 - 2 SD",
"winner": "CIN"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "CIN 3 - 2 SD",
"winner": "CIN"
},
"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 CIN | True | 1.0133 | 1.0133 | 1 | 9 | 0 |
| Home SD | True | 1.0111 | 1.0111 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LF | JJ Bleday | 76 | 1.0565 | 0.7536 | neutral | 0.3890 | 0.2840 | 0.5210 | 12.40 | 50 | 90.50 | 20.30 | 26.60 | 19.40 | 12.30 | -0.2571 |
| CF | Blake Dunn | 154 | 0.9733 | -0.3562 | negative_batter_regression | 0.2740 | 0.2400 | 0.3260 | 4.40 | 30 | 88.30 | 12.90 | 28.10 | 20.80 | 5.20 | -2 |
| 1B | Sal Stewart | 97 | 1.0804 | 1.0716 | neutral | 0.3590 | 0.2580 | 0.4750 | 15.20 | 41.10 | 90.70 | 14.40 | 26.80 | 20.90 | 12.20 | 0.2571 |
| DH | Nathaniel Lowe | 196 | 1.0587 | 0.7826 | neutral | 0.3770 | 0.2770 | 0.5250 | 14.30 | 43.70 | 89.40 | 13.30 | 21.90 | 23.70 | 10.30 | 0.4000 |
| 3B | Eugenio Suárez | 529 | 0.9792 | -0.2768 | neutral | 0.2800 | 0.2060 | 0.3410 | 8.30 | 25 | 86.10 | 21.10 | 33.10 | 31.30 | 10 | -0.0286 |
| RF | Noelvi Marte | 457 | 0.9467 | -0.7109 | neutral | 0.2220 | 0.1790 | 0.2070 | 0 | 28 | 86.50 | 0.50 | 29.80 | 27.50 | 10 | 0.4857 |
| SS | Matt McLain | 251 | 1.0143 | 0.1910 | neutral | 0.3170 | 0.2270 | 0.3900 | 8.60 | 37.30 | 88.10 | 20.10 | 25.30 | 23.80 | 11.30 | 0.4000 |
| C | Tyler Stephenson | 219 | 1.0371 | 0.4951 | positive_batter_regression | 0.3280 | 0.2270 | 0.4250 | 11.80 | 42.50 | 90.30 | 22.30 | 25.60 | 25.80 | 12.10 | 1.1143 |
| 2B | Edwin Arroyo | 325 | 0.9733 | -0.3565 | neutral | 0.2650 | 0.2130 | 0.2540 | 0 | 25 | 90.90 | 2.80 | 27.90 | 37.50 | 12.50 | 0.2571 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2B | Fernando Tatis Jr. | 178 | 1.0743 | 0.9905 | positive_batter_regression | 0.3490 | 0.2830 | 0.4150 | 10.30 | 51.10 | 90.50 | 2.90 | 29.60 | 21.90 | 9.30 | 1.2857 |
| 3B | Manny Machado | 519 | 1.0191 | 0.2553 | positive_batter_regression | 0.3060 | 0.2250 | 0.3920 | 8.20 | 42.90 | 89.80 | 10.90 | 25.30 | 23.30 | 10.50 | 1.1714 |
| CF | Jackson Merrill | 335 | 1.0504 | 0.6715 | positive_batter_regression | 0.3220 | 0.2430 | 0.4330 | 10.30 | 46.40 | 89.80 | 13.90 | 28.40 | 25.30 | 8.70 | 1.4857 |
| 1B | Ty France | 105 | 1.0163 | 0.2173 | neutral | 0.3230 | 0.2500 | 0.4500 | 12.10 | 48.90 | 91.30 | 7.50 | 29.50 | 23.50 | 5.30 | -0.7143 |
| SS | Xander Bogaerts | 143 | 1.0179 | 0.2392 | neutral | 0.3190 | 0.2510 | 0.3970 | 6.80 | 36.70 | 88 | 8.20 | 22.60 | 18.60 | 9.30 | 0.7714 |
| RF | Jase Bowen | 448 | 0.9628 | -0.4963 | positive_batter_regression | 0.1520 | 0.1290 | 0.2300 | 16.70 | 16.70 | 85.70 | 19.20 | 50 | 50 | 0 | 2 |
| LF | Samad Taylor | 296 | 0.9620 | -0.5060 | negative_batter_regression | 0.3040 | 0.0980 | 0.1510 | 0 | 33.30 | 84.50 | -6.70 | 22.20 | 16.70 | 33.30 | -2 |
| DH | Gavin Sheets | 268 | 1.0306 | 0.4075 | neutral | 0.3360 | 0.2430 | 0.4270 | 9 | 45.10 | 89.40 | 15.90 | 21.70 | 22.50 | 11.30 | -0.2000 |
| C | Freddy Fermin | 266 | 0.9663 | -0.4490 | neutral | 0.2570 | 0.1900 | 0.2730 | 2.40 | 25.90 | 86.30 | 14.50 | 25.80 | 21.40 | 9.50 | 0.8286 |
{
"home": {
"applied": true,
"offense_factor": 1.0111,
"raw_average_factor": 1.0111,
"team_espn_average_rank": 284.22,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "2B",
"player_id": "665487",
"player_name": "Fernando Tatis Jr.",
"offense_factor": 1.0743,
"quality_score": 0.9905,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "665487",
"espn_id": 35983,
"player_name": "Fernando Tatis Jr.",
"team": "SD",
"role": "batter",
"espn_rank": 178,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 178,
"gp_value": 63.0,
"gp_rank": "50",
"ab_value": 238.0,
"ab_rank": "40",
"r_value": 23.0,
"r_rank": "153",
"h_value": 65.0,
"h_rank": "32",
"avg_value": 0.2731092,
"avg_rank": 49.0,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 19.0,
"rbi_rank": "194",
"tb_value": 78.0,
"tb_rank": "1322",
"bb_value": 25.0,
"bb_rank": "69",
"so_value": 59.0,
"so_rank": "60",
"sb_value": 15.0,
"sb_rank": "8",
"obp_value": 0.3420074,
"obp_rank": "68",
"slg_value": 0.327731,
"slg_rank": "155",
"ops_value": 0.6697384,
"ops_rank": 132.0,
"war_value": 0.58,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 222.0,
"k_percent": 21.9,
"bb_percent": 9.3,
"woba": 0.304,
"xwoba": 0.349,
"xba": 0.283,
"xslg": 0.415,
"sweet_spot_percent": 33.2,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 51.1,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 2.9,
"whiff_percent": 29.6,
"swing_percent": 48.0
},
"components": {
"expected_quality": 0.9424,
"regression_edge": 1.2857,
"xwoba_edge": 1.2571,
"xba_edge": 1.2571,
"xslg_edge": 0.5857,
"barrel_edge": 0.7333,
"hard_hit_edge": 1.75,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": -0.0167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "592518",
"player_name": "Manny Machado",
"offense_factor": 1.0191,
"quality_score": 0.2553,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "592518",
"espn_id": 31097,
"player_name": "Manny Machado",
"team": "SD",
"role": "batter",
"espn_rank": 519,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 519,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 225.0,
"ab_rank": "85",
"r_value": 29.0,
"r_rank": "93",
"h_value": 38.0,
"h_rank": "184",
"avg_value": 0.1688888,
"avg_rank": 173.0,
"2b_value": 6.0,
"2b_rank": "214",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 11.0,
"hr_rank": "41",
"rbi_value": 32.0,
"rbi_rank": "62",
"tb_value": 77.0,
"tb_rank": "875",
"bb_value": 27.0,
"bb_rank": "55",
"so_value": 60.0,
"so_rank": "56",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2539062,
"obp_rank": "170",
"slg_value": 0.3422222,
"slg_rank": "146",
"ops_value": 0.5961284,
"ops_rank": 167.0,
"war_value": -0.56,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 23.3,
"bb_percent": 10.5,
"woba": 0.265,
"xwoba": 0.306,
"xba": 0.225,
"xslg": 0.392,
"sweet_spot_percent": 30.0,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 42.9,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 10.9,
"whiff_percent": 25.3,
"swing_percent": 48.5
},
"components": {
"expected_quality": 0.1159,
"regression_edge": 1.1714,
"xwoba_edge": 0.0286,
"xba_edge": -0.4,
"xslg_edge": 0.2571,
"barrel_edge": 0.2667,
"hard_hit_edge": 0.5786,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": -0.55,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "701538",
"player_name": "Jackson Merrill",
"offense_factor": 1.0504,
"quality_score": 0.6715,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "701538",
"espn_id": 4872691,
"player_name": "Jackson Merrill",
"team": "SD",
"role": "batter",
"espn_rank": 335,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 335,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 228.0,
"ab_rank": "72",
"r_value": 27.0,
"r_rank": "111",
"h_value": 46.0,
"h_rank": "144",
"avg_value": 0.2017543,
"avg_rank": 162.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 24.0,
"rbi_rank": "140",
"tb_value": 75.0,
"tb_rank": "941",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 64.0,
"so_rank": "40",
"sb_value": 10.0,
"sb_rank": "27",
"obp_value": 0.2749003,
"obp_rank": "161",
"slg_value": 0.3289473,
"slg_rank": "154",
"ops_value": 0.6038476,
"ops_rank": 163.0,
"war_value": 0.0,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 210.0,
"k_percent": 25.3,
"bb_percent": 8.7,
"woba": 0.27,
"xwoba": 0.322,
"xba": 0.243,
"xslg": 0.433,
"sweet_spot_percent": 38.6,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 46.4,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 13.9,
"whiff_percent": 28.4,
"swing_percent": 54.7
},
"components": {
"expected_quality": 0.5761,
"regression_edge": 1.4857,
"xwoba_edge": 0.4857,
"xba_edge": 0.1143,
"xslg_edge": 0.8429,
"barrel_edge": 0.7333,
"hard_hit_edge": 1.0786,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.8833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "664034",
"player_name": "Ty France",
"offense_factor": 1.0163,
"quality_score": 0.2173,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664034",
"espn_id": 35591,
"player_name": "Ty France",
"team": "SD",
"role": "batter",
"espn_rank": 105,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 105,
"gp_value": 44.0,
"gp_rank": "242",
"ab_value": 123.0,
"ab_rank": "249",
"r_value": 14.0,
"r_rank": "261",
"h_value": 33.0,
"h_rank": "225",
"avg_value": 0.2682926,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": "242",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 18.0,
"rbi_rank": "205",
"tb_value": 60.0,
"tb_rank": "860",
"bb_value": 7.0,
"bb_rank": "313",
"so_value": 31.0,
"so_rank": "227",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.312977,
"obp_rank": "-",
"slg_value": 0.4878048,
"slg_rank": "-",
"ops_value": 0.8007818,
"ops_rank": null,
"war_value": 1.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 98.0,
"k_percent": 23.5,
"bb_percent": 5.3,
"woba": 0.348,
"xwoba": 0.323,
"xba": 0.25,
"xslg": 0.45,
"sweet_spot_percent": 32.6,
"barrel_batted_rate": 12.1,
"hard_hit_percent": 48.9,
"exit_velocity_avg": 91.3,
"launch_angle_avg": 7.5,
"whiff_percent": 29.5,
"swing_percent": 54.0
},
"components": {
"expected_quality": 0.6778,
"regression_edge": -0.7143,
"xwoba_edge": 0.5143,
"xba_edge": 0.3143,
"xslg_edge": 1.0857,
"barrel_edge": 1.1333,
"hard_hit_edge": 1.4357,
"exit_velocity_edge": 1.0,
"sweet_spot_edge": -0.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "593428",
"player_name": "Xander Bogaerts",
"offense_factor": 1.0179,
"quality_score": 0.2392,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "593428",
"espn_id": 31606,
"player_name": "Xander Bogaerts",
"team": "SD",
"role": "batter",
"espn_rank": 143,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 143,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 221.0,
"ab_rank": "92",
"r_value": 25.0,
"r_rank": "134",
"h_value": 50.0,
"h_rank": "113",
"avg_value": 0.2262443,
"avg_rank": 134.0,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 27.0,
"rbi_rank": "110",
"tb_value": 77.0,
"tb_rank": "1019",
"bb_value": 23.0,
"bb_rank": "83",
"so_value": 46.0,
"so_rank": "126",
"sb_value": 9.0,
"sb_rank": "37",
"obp_value": 0.2995951,
"obp_rank": "132",
"slg_value": 0.3484162,
"slg_rank": "142",
"ops_value": 0.6480113,
"ops_rank": 140.0,
"war_value": 0.82,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 205.0,
"k_percent": 18.6,
"bb_percent": 9.3,
"woba": 0.292,
"xwoba": 0.319,
"xba": 0.251,
"xslg": 0.397,
"sweet_spot_percent": 29.9,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 36.7,
"exit_velocity_avg": 88.0,
"launch_angle_avg": 8.2,
"whiff_percent": 22.6,
"swing_percent": 43.9
},
"components": {
"expected_quality": 0.173,
"regression_edge": 0.7714,
"xwoba_edge": 0.4,
"xba_edge": 0.3429,
"xslg_edge": 0.3286,
"barrel_edge": -0.0444,
"hard_hit_edge": -0.3071,
"exit_velocity_edge": -0.32,
"sweet_spot_edge": -0.5667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "687749",
"player_name": "Jase Bowen",
"offense_factor": 0.9628,
"quality_score": -0.4963,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "687749",
"espn_id": 42704,
"player_name": "Jase Bowen",
"team": "SD",
"role": "batter",
"espn_rank": 448,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 448,
"gp_value": 5.0,
"gp_rank": "507",
"ab_value": 12.0,
"ab_rank": "503",
"r_value": 0.0,
"r_rank": "516",
"h_value": 1.0,
"h_rank": "506",
"avg_value": 0.0833333,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 0.0,
"rbi_rank": "501",
"tb_value": 1.0,
"tb_rank": "2589",
"bb_value": 0.0,
"bb_rank": "503",
"so_value": 6.0,
"so_rank": "467",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.0833333,
"obp_rank": "-",
"slg_value": 0.0833333,
"slg_rank": "-",
"ops_value": 0.1666666,
"ops_rank": null,
"war_value": -0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 50.0,
"bb_percent": 0.0,
"woba": 0.075,
"xwoba": 0.152,
"xba": 0.129,
"xslg": 0.23,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 16.7,
"hard_hit_percent": 16.7,
"exit_velocity_avg": 85.7,
"launch_angle_avg": 19.2,
"whiff_percent": 50.0,
"swing_percent": 47.6
},
"components": {
"expected_quality": -1.608,
"regression_edge": 2.0,
"xwoba_edge": -2.5,
"xba_edge": -2.5,
"xslg_edge": -2.0571,
"barrel_edge": 2.1556,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -1.24,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "669392",
"player_name": "Samad Taylor",
"offense_factor": 0.962,
"quality_score": -0.506,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "669392",
"espn_id": 39710,
"player_name": "Samad Taylor",
"team": "SD",
"role": "batter",
"espn_rank": 296,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 296,
"gp_value": 2.0,
"gp_rank": "530",
"ab_value": 4.0,
"ab_rank": "529",
"r_value": 2.0,
"r_rank": "455",
"h_value": 1.0,
"h_rank": "506",
"avg_value": 0.25,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 0.0,
"rbi_rank": "501",
"tb_value": 1.0,
"tb_rank": "2589",
"bb_value": 2.0,
"bb_rank": "429",
"so_value": 1.0,
"so_rank": "526",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.5,
"obp_rank": "-",
"slg_value": 0.25,
"slg_rank": "-",
"ops_value": 0.75,
"ops_rank": null,
"war_value": 0.09,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 16.7,
"bb_percent": 33.3,
"woba": 0.383,
"xwoba": 0.304,
"xba": 0.098,
"xslg": 0.151,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 84.5,
"launch_angle_avg": -6.7,
"whiff_percent": 22.2,
"swing_percent": 39.1
},
"components": {
"expected_quality": -0.9819,
"regression_edge": -2.0,
"xwoba_edge": -0.0286,
"xba_edge": -2.5,
"xslg_edge": -2.5,
"barrel_edge": -1.5556,
"hard_hit_edge": -0.7929,
"exit_velocity_edge": -1.72,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "657757",
"player_name": "Gavin Sheets",
"offense_factor": 1.0306,
"quality_score": 0.4075,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657757",
"espn_id": 40700,
"player_name": "Gavin Sheets",
"team": "SD",
"role": "batter",
"espn_rank": 268,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 268,
"gp_value": 58.0,
"gp_rank": "141",
"ab_value": 179.0,
"ab_rank": "164",
"r_value": 24.0,
"r_rank": "145",
"h_value": 41.0,
"h_rank": "174",
"avg_value": 0.2290502,
"avg_rank": 130.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 10.0,
"hr_rank": "49",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 81.0,
"tb_rank": "768",
"bb_value": 23.0,
"bb_rank": "83",
"so_value": 46.0,
"so_rank": "126",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.3235294,
"obp_rank": "101",
"slg_value": 0.4525139,
"slg_rank": "53",
"ops_value": 0.7760433,
"ops_rank": 69.0,
"war_value": 0.19,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 165.0,
"k_percent": 22.5,
"bb_percent": 11.3,
"woba": 0.343,
"xwoba": 0.336,
"xba": 0.243,
"xslg": 0.427,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 45.1,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 15.9,
"whiff_percent": 21.7,
"swing_percent": 42.8
},
"components": {
"expected_quality": 0.6643,
"regression_edge": -0.2,
"xwoba_edge": 0.8857,
"xba_edge": 0.1143,
"xslg_edge": 0.7571,
"barrel_edge": 0.4444,
"hard_hit_edge": 0.8929,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": 0.7167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "666023",
"player_name": "Freddy Fermin",
"offense_factor": 0.9663,
"quality_score": -0.449,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "666023",
"espn_id": 41928,
"player_name": "Freddy Fermin",
"team": "SD",
"role": "batter",
"espn_rank": 266,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 266,
"gp_value": 47.0,
"gp_rank": "223",
"ab_value": 109.0,
"ab_rank": "284",
"r_value": 13.0,
"r_rank": "277",
"h_value": 16.0,
"h_rank": "351",
"avg_value": 0.1467889,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": "242",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 9.0,
"rbi_rank": "311",
"tb_value": 27.0,
"tb_rank": "1763",
"bb_value": 12.0,
"bb_rank": "230",
"so_value": 27.0,
"so_rank": "270",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.24,
"obp_rank": "-",
"slg_value": 0.2477064,
"slg_rank": "-",
"ops_value": 0.4877064,
"ops_rank": null,
"war_value": 0.2,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 105.0,
"k_percent": 21.4,
"bb_percent": 9.5,
"woba": 0.228,
"xwoba": 0.257,
"xba": 0.19,
"xslg": 0.273,
"sweet_spot_percent": 29.4,
"barrel_batted_rate": 2.4,
"hard_hit_percent": 25.9,
"exit_velocity_avg": 86.3,
"launch_angle_avg": 14.5,
"whiff_percent": 25.8,
"swing_percent": 50.2
},
"components": {
"expected_quality": -1.2288,
"regression_edge": 0.8286,
"xwoba_edge": -1.3714,
"xba_edge": -1.4,
"xslg_edge": -1.4429,
"barrel_edge": -1.0222,
"hard_hit_edge": -1.85,
"exit_velocity_edge": -1.0,
"sweet_spot_edge": -0.65,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0133,
"raw_average_factor": 1.0133,
"team_espn_average_rank": 256.0,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "LF",
"player_id": "668709",
"player_name": "JJ Bleday",
"offense_factor": 1.0565,
"quality_score": 0.7536,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668709",
"espn_id": 42410,
"player_name": "JJ Bleday",
"team": "CIN",
"role": "batter",
"espn_rank": 76,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 76,
"gp_value": 36.0,
"gp_rank": "305",
"ab_value": 135.0,
"ab_rank": "232",
"r_value": 19.0,
"r_rank": "194",
"h_value": 37.0,
"h_rank": "190",
"avg_value": 0.274074,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 10.0,
"hr_rank": "49",
"rbi_value": 28.0,
"rbi_rank": "99",
"tb_value": 77.0,
"tb_rank": "616",
"bb_value": 19.0,
"bb_rank": "135",
"so_value": 30.0,
"so_rank": "239",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3612903,
"obp_rank": "-",
"slg_value": 0.5703703,
"slg_rank": "-",
"ops_value": 0.9316606,
"ops_rank": null,
"war_value": 1.42,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 109.0,
"k_percent": 19.4,
"bb_percent": 12.3,
"woba": 0.398,
"xwoba": 0.389,
"xba": 0.284,
"xslg": 0.521,
"sweet_spot_percent": 45.3,
"barrel_batted_rate": 12.4,
"hard_hit_percent": 50.0,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 20.3,
"whiff_percent": 26.6,
"swing_percent": 47.2
},
"components": {
"expected_quality": 1.8104,
"regression_edge": -0.2571,
"xwoba_edge": 2.4,
"xba_edge": 1.2857,
"xslg_edge": 2.1,
"barrel_edge": 1.2,
"hard_hit_edge": 1.5929,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": 2.0,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "CF",
"player_id": "694362",
"player_name": "Blake Dunn",
"offense_factor": 0.9733,
"quality_score": -0.3562,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "694362",
"espn_id": 4650237,
"player_name": "Blake Dunn",
"team": "CIN",
"role": "batter",
"espn_rank": 154,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 154,
"gp_value": 25.0,
"gp_rank": "365",
"ab_value": 90.0,
"ab_rank": "318",
"r_value": 13.0,
"r_rank": "277",
"h_value": 27.0,
"h_rank": "258",
"avg_value": 0.3,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 5.0,
"rbi_rank": "386",
"tb_value": 39.0,
"tb_rank": "1461",
"bb_value": 5.0,
"bb_rank": "358",
"so_value": 20.0,
"so_rank": "331",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.34375,
"obp_rank": "-",
"slg_value": 0.4333333,
"slg_rank": "-",
"ops_value": 0.7770833,
"ops_rank": null,
"war_value": 0.75,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 49.0,
"k_percent": 20.8,
"bb_percent": 5.2,
"woba": 0.344,
"xwoba": 0.274,
"xba": 0.24,
"xslg": 0.326,
"sweet_spot_percent": 37.1,
"barrel_batted_rate": 4.4,
"hard_hit_percent": 30.0,
"exit_velocity_avg": 88.3,
"launch_angle_avg": 12.9,
"whiff_percent": 28.1,
"swing_percent": 48.6
},
"components": {
"expected_quality": -0.5948,
"regression_edge": -2.0,
"xwoba_edge": -0.8857,
"xba_edge": 0.0286,
"xslg_edge": -0.6857,
"barrel_edge": -0.5778,
"hard_hit_edge": -1.2643,
"exit_velocity_edge": -0.2,
"sweet_spot_edge": 0.6333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "701398",
"player_name": "Sal Stewart",
"offense_factor": 1.0804,
"quality_score": 1.0716,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "701398",
"espn_id": 5080771,
"player_name": "Sal Stewart",
"team": "CIN",
"role": "batter",
"espn_rank": 97,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 97,
"gp_value": 64.0,
"gp_rank": "37",
"ab_value": 241.0,
"ab_rank": "29",
"r_value": 35.0,
"r_rank": "53",
"h_value": 61.0,
"h_rank": "53",
"avg_value": 0.253112,
"avg_rank": 81.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 12.0,
"hr_rank": "35",
"rbi_value": 39.0,
"rbi_rank": "24",
"tb_value": 110.0,
"tb_rank": "549",
"bb_value": 34.0,
"bb_rank": "25",
"so_value": 58.0,
"so_rank": "63",
"sb_value": 10.0,
"sb_rank": "27",
"obp_value": 0.3453237,
"obp_rank": "62",
"slg_value": 0.4564315,
"slg_rank": "50",
"ops_value": 0.8017552,
"ops_rank": 55.0,
"war_value": 1.21,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 227.0,
"k_percent": 20.9,
"bb_percent": 12.2,
"woba": 0.35,
"xwoba": 0.359,
"xba": 0.258,
"xslg": 0.475,
"sweet_spot_percent": 35.7,
"barrel_batted_rate": 15.2,
"hard_hit_percent": 41.1,
"exit_velocity_avg": 90.7,
"launch_angle_avg": 14.4,
"whiff_percent": 26.8,
"swing_percent": 47.8
},
"components": {
"expected_quality": 1.2042,
"regression_edge": 0.2571,
"xwoba_edge": 1.5429,
"xba_edge": 0.5429,
"xslg_edge": 1.4429,
"barrel_edge": 1.8222,
"hard_hit_edge": 0.3214,
"exit_velocity_edge": 0.76,
"sweet_spot_edge": 0.4,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "663993",
"player_name": "Nathaniel Lowe",
"offense_factor": 1.0587,
"quality_score": 0.7826,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663993",
"espn_id": 40538,
"player_name": "Nathaniel Lowe",
"team": "CIN",
"role": "batter",
"espn_rank": 196,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 196,
"gp_value": 48.0,
"gp_rank": "212",
"ab_value": 140.0,
"ab_rank": "220",
"r_value": 16.0,
"r_rank": "230",
"h_value": 35.0,
"h_rank": "209",
"avg_value": 0.25,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 9.0,
"hr_rank": "60",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 71.0,
"tb_rank": "869",
"bb_value": 16.0,
"bb_rank": "172",
"so_value": 37.0,
"so_rank": "187",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.326923,
"obp_rank": "-",
"slg_value": 0.5071428,
"slg_rank": "-",
"ops_value": 0.8340658,
"ops_rank": null,
"war_value": 0.46,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 122.0,
"k_percent": 23.7,
"bb_percent": 10.3,
"woba": 0.363,
"xwoba": 0.377,
"xba": 0.277,
"xslg": 0.525,
"sweet_spot_percent": 42.7,
"barrel_batted_rate": 14.3,
"hard_hit_percent": 43.7,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 13.3,
"whiff_percent": 21.9,
"swing_percent": 43.8
},
"components": {
"expected_quality": 1.5758,
"regression_edge": 0.4,
"xwoba_edge": 2.0571,
"xba_edge": 1.0857,
"xslg_edge": 2.1571,
"barrel_edge": 1.6222,
"hard_hit_edge": 0.6929,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": 1.5667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "553993",
"player_name": "Eugenio Suárez",
"offense_factor": 0.9792,
"quality_score": -0.2768,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "553993",
"espn_id": 32367,
"player_name": "Eugenio Suarez",
"team": "CIN",
"role": "batter",
"espn_rank": 529,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 529,
"gp_value": 38.0,
"gp_rank": "290",
"ab_value": 134.0,
"ab_rank": "233",
"r_value": 13.0,
"r_rank": "277",
"h_value": 28.0,
"h_rank": "252",
"avg_value": 0.2089552,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": "242",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 16.0,
"rbi_rank": "231",
"tb_value": 45.0,
"tb_rank": "1394",
"bb_value": 15.0,
"bb_rank": "186",
"so_value": 47.0,
"so_rank": "120",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2866666,
"obp_rank": "-",
"slg_value": 0.3358208,
"slg_rank": "-",
"ops_value": 0.6224874,
"ops_rank": null,
"war_value": -0.61,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 115.0,
"k_percent": 31.3,
"bb_percent": 10.0,
"woba": 0.281,
"xwoba": 0.28,
"xba": 0.206,
"xslg": 0.341,
"sweet_spot_percent": 36.4,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 25.0,
"exit_velocity_avg": 86.1,
"launch_angle_avg": 21.1,
"whiff_percent": 33.1,
"swing_percent": 45.8
},
"components": {
"expected_quality": -0.6112,
"regression_edge": -0.0286,
"xwoba_edge": -0.7143,
"xba_edge": -0.9429,
"xslg_edge": -0.4714,
"barrel_edge": 0.2889,
"hard_hit_edge": -1.9786,
"exit_velocity_edge": -1.08,
"sweet_spot_edge": 0.5167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "682622",
"player_name": "Noelvi Marte",
"offense_factor": 0.9467,
"quality_score": -0.7109,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682622",
"espn_id": 41307,
"player_name": "Noelvi Marte",
"team": "CIN",
"role": "batter",
"espn_rank": 457,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 457,
"gp_value": 14.0,
"gp_rank": "428",
"ab_value": 36.0,
"ab_rank": "424",
"r_value": 3.0,
"r_rank": "432",
"h_value": 6.0,
"h_rank": "435",
"avg_value": 0.1666666,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 0.0,
"rbi_rank": "501",
"tb_value": 6.0,
"tb_rank": "2518",
"bb_value": 4.0,
"bb_rank": "385",
"so_value": 11.0,
"so_rank": "413",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.25,
"obp_rank": "-",
"slg_value": 0.1666666,
"slg_rank": "-",
"ops_value": 0.4166666,
"ops_rank": null,
"war_value": -0.28,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 31.0,
"k_percent": 27.5,
"bb_percent": 10.0,
"woba": 0.205,
"xwoba": 0.222,
"xba": 0.179,
"xslg": 0.207,
"sweet_spot_percent": 16.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 28.0,
"exit_velocity_avg": 86.5,
"launch_angle_avg": 0.5,
"whiff_percent": 29.8,
"swing_percent": 53.5
},
"components": {
"expected_quality": -1.916,
"regression_edge": 0.4857,
"xwoba_edge": -2.3714,
"xba_edge": -1.7143,
"xslg_edge": -2.3857,
"barrel_edge": -1.5556,
"hard_hit_edge": -1.55,
"exit_velocity_edge": -0.92,
"sweet_spot_edge": -2.5,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "680574",
"player_name": "Matt McLain",
"offense_factor": 1.0143,
"quality_score": 0.191,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680574",
"espn_id": 4422899,
"player_name": "Matt McLain",
"team": "CIN",
"role": "batter",
"espn_rank": 251,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 251,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 209.0,
"ab_rank": "116",
"r_value": 27.0,
"r_rank": "111",
"h_value": 43.0,
"h_rank": "162",
"avg_value": 0.2057416,
"avg_rank": 157.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 77.0,
"tb_rank": "837",
"bb_value": 27.0,
"bb_rank": "55",
"so_value": 57.0,
"so_rank": "67",
"sb_value": 7.0,
"sb_rank": "52",
"obp_value": 0.302521,
"obp_rank": "130",
"slg_value": 0.368421,
"slg_rank": "129",
"ops_value": 0.670942,
"ops_rank": 131.0,
"war_value": 0.24,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 209.0,
"k_percent": 23.8,
"bb_percent": 11.3,
"woba": 0.303,
"xwoba": 0.317,
"xba": 0.227,
"xslg": 0.39,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 8.6,
"hard_hit_percent": 37.3,
"exit_velocity_avg": 88.1,
"launch_angle_avg": 20.1,
"whiff_percent": 25.3,
"swing_percent": 42.3
},
"components": {
"expected_quality": 0.1686,
"regression_edge": 0.4,
"xwoba_edge": 0.3429,
"xba_edge": -0.3429,
"xslg_edge": 0.2286,
"barrel_edge": 0.3556,
"hard_hit_edge": -0.2214,
"exit_velocity_edge": -0.28,
"sweet_spot_edge": 0.4333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "663886",
"player_name": "Tyler Stephenson",
"offense_factor": 1.0371,
"quality_score": 0.4951,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "663886",
"espn_id": 34975,
"player_name": "Tyler Stephenson",
"team": "CIN",
"role": "batter",
"espn_rank": 219,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 219,
"gp_value": 51.0,
"gp_rank": "197",
"ab_value": 158.0,
"ab_rank": "202",
"r_value": 12.0,
"r_rank": "291",
"h_value": 32.0,
"h_rank": "230",
"avg_value": 0.2025316,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 18.0,
"rbi_rank": "205",
"tb_value": 54.0,
"tb_rank": "1242",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 47.0,
"so_rank": "120",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2967032,
"obp_rank": "-",
"slg_value": 0.3417721,
"slg_rank": "-",
"ops_value": 0.6384753,
"ops_rank": null,
"war_value": 0.36,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 154.0,
"k_percent": 25.8,
"bb_percent": 12.1,
"woba": 0.289,
"xwoba": 0.328,
"xba": 0.227,
"xslg": 0.425,
"sweet_spot_percent": 40.7,
"barrel_batted_rate": 11.8,
"hard_hit_percent": 42.5,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 22.3,
"whiff_percent": 25.6,
"swing_percent": 44.6
},
"components": {
"expected_quality": 0.641,
"regression_edge": 1.1143,
"xwoba_edge": 0.6571,
"xba_edge": -0.3429,
"xslg_edge": 0.7286,
"barrel_edge": 1.0667,
"hard_hit_edge": 0.5214,
"exit_velocity_edge": 0.6,
"sweet_spot_edge": 1.2333,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "2B",
"player_id": "695490",
"player_name": "Edwin Arroyo",
"offense_factor": 0.9733,
"quality_score": -0.3565,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695490",
"espn_id": 4919919,
"player_name": "Edwin Arroyo",
"team": "CIN",
"role": "batter",
"espn_rank": 325,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 325,
"gp_value": 6.0,
"gp_rank": "503",
"ab_value": 14.0,
"ab_rank": "494",
"r_value": 1.0,
"r_rank": "484",
"h_value": 3.0,
"h_rank": "475",
"avg_value": 0.2142857,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 0.0,
"rbi_rank": "501",
"tb_value": 3.0,
"tb_rank": "2558",
"bb_value": 2.0,
"bb_rank": "429",
"so_value": 6.0,
"so_rank": "467",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3125,
"obp_rank": "-",
"slg_value": 0.2142857,
"slg_rank": "-",
"ops_value": 0.5267857,
"ops_rank": null,
"war_value": 0.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 37.5,
"bb_percent": 12.5,
"woba": 0.256,
"xwoba": 0.265,
"xba": 0.213,
"xslg": 0.254,
"sweet_spot_percent": 50.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 25.0,
"exit_velocity_avg": 90.9,
"launch_angle_avg": 2.8,
"whiff_percent": 27.9,
"swing_percent": 58.9
},
"components": {
"expected_quality": -0.9631,
"regression_edge": 0.2571,
"xwoba_edge": -1.1429,
"xba_edge": -0.7429,
"xslg_edge": -1.7143,
"barrel_edge": -1.5556,
"hard_hit_edge": -1.9786,
"exit_velocity_edge": 0.84,
"sweet_spot_edge": 2.5,
"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 CIN | True | 66 | -0.5066 | 0.9600 | 1.0431 | 0.9358 | 1.0250 | 1.0325 | neutral | 0.3450 | 0.3230 | 15.80 | 10.40 | 21.20 | 7.60 | 38.40 | |
| Home SD | True | 183 | -0.4071 | 0.8800 | 1.0346 | 0.9552 | 0.9842 | 1.0432 | negative_pitcher_regression | 0.3370 | 0.2990 | 20.10 | 8.20 | 19.70 | 8.10 | 40.70 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away CIN | True | None | 93 | 87.38 | 2427 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.1306 | |
| Home SD | True | None | 83 | 88.65 | 2240 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0593 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0304 |
| home_runs_vs_away_pitcher | 1.0414 |
| home_pitcher_quality_edge | 0.0995 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "621111",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 220.0,
"k_percent": 20.1,
"bb_percent": 8.2,
"woba": 0.299,
"xwoba": 0.337,
"sweet_spot_percent": 37.8,
"barrel_batted_rate": 8.1,
"hard_hit_percent": 40.7,
"avg_best_speed": 80.8121,
"avg_hyper_speed": 94.2474,
"whiff_percent": 19.7,
"swing_percent": 43.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4195,
"command_and_miss": -0.44,
"regression_edge": -1.0857,
"xwoba_edge": -0.6429,
"barrel_edge": -0.2222,
"hard_hit_edge": -0.3,
"whiff_edge": -0.8714,
"bb_edge": 0.225,
"pitch_design_score": -0.0593
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "621111",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 83,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 83,
"pitch_usage": 0.0,
"release_speed": 88.6511734612526,
"release_spin_rate": 2240.4018528786537,
"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": 83,
"pitch_usage": 0.0,
"release_speed": 88.6511734612526,
"release_spin_rate": 2240.4018528786537,
"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.6512,
"release_spin_rate": 2240.4019,
"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.0593,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.4236,
"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.4071,
"sample_weight": 0.88,
"run_prevention_factor": 1.0346,
"strikeout_factor": 0.9552,
"walk_factor": 0.9842,
"homer_factor": 1.0432,
"woba_minus_xwoba": -0.038,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "621111",
"espn_id": 39251,
"player_name": "Walker Buehler",
"team": "SD",
"role": "pitcher",
"espn_rank": 183,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 183,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 3.0,
"qs_rank": 88,
"era_value": 4.526,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 57.2,
"ip_rank": 100,
"h_value": 54.0,
"h_rank": 96,
"er_value": 29.0,
"er_rank": 69,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 20.0,
"bb_rank": 87,
"k_value": 49.0,
"k_rank": 93,
"k_per_9_value": 7.647399,
"k_per_9_rank": 25,
"whip_value": 1.2832,
"whip_rank": null,
"war_value": 0.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "671096",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 240.0,
"k_percent": 15.8,
"bb_percent": 10.4,
"woba": 0.323,
"xwoba": 0.345,
"sweet_spot_percent": 31.5,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 38.4,
"avg_best_speed": 79.6363,
"avg_hyper_speed": 94.1034,
"whiff_percent": 21.2,
"swing_percent": 46.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4625,
"command_and_miss": -0.7514,
"regression_edge": -0.6286,
"xwoba_edge": -0.8714,
"barrel_edge": -0.1111,
"hard_hit_edge": 0.0286,
"whiff_edge": -0.6571,
"bb_edge": -0.325,
"pitch_design_score": -0.1306
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "671096",
"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": 87.3776045181183,
"release_spin_rate": 2426.846855788325,
"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": 87.3776045181183,
"release_spin_rate": 2426.846855788325,
"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.3776,
"release_spin_rate": 2426.8469,
"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.1306,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.933,
"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.5066,
"sample_weight": 0.96,
"run_prevention_factor": 1.0431,
"strikeout_factor": 0.9358,
"walk_factor": 1.025,
"homer_factor": 1.0325,
"woba_minus_xwoba": -0.022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671096",
"espn_id": 4414528,
"player_name": "Andrew Abbott",
"team": "CIN",
"role": "pitcher",
"espn_rank": 66,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 66,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 5.0,
"qs_rank": 39,
"era_value": 4.0631,
"era_rank": 46.0,
"w_value": 4.0,
"w_rank": 52,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 68.2,
"ip_rank": 51,
"h_value": 68.0,
"h_rank": 29,
"er_value": 31.0,
"er_rank": 54,
"hr_value": 9.0,
"hr_rank": 48,
"bb_value": 31.0,
"bb_rank": 9,
"k_value": 47.0,
"k_rank": 103,
"k_per_9_value": 6.1601944,
"k_per_9_rank": 54,
"whip_value": 1.4417,
"whip_rank": 62.0,
"war_value": 1.12,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0304,
"home_runs_vs_away_pitcher": 1.0414,
"home_pitcher_quality_edge": 0.0995
},
"score_before": {
"away_runs": 3.4442,
"home_runs": 1.9578
},
"score_after": {
"away_runs": 3.549,
"home_runs": 2.0388,
"home_win_probability": 0.3734
},
"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 CIN | 16-43 | 0.271 | 0.90 | 4.20 | -192 | cold | average | |
| Home SD | 11-47 | 0.190 | 0.80 | 3.20 | -141 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away CIN | 31-33 | 0.484 | -51 | -0.797 | True |
| Home SD | 33-31 | 0.516 | -18 | -0.281 | True |
| Signal | - | - | 0.516 | 0.562 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target CIN | - | - | 3 | - | - | - | - |
| Game target SD | - | - | 2 | - | - | - | - |
| Player finalized CIN | 50 | 11 | 5 | 0 | 6 | 6 | 12 |
| Player finalized SD | 47 | 10 | 8 | 0 | 7 | 7 | 12 |
| Player model fractional CIN | 50.33 | 10.72 | 5.58 | 1.79 | 5.62 | 5.79 | 13.86 |
| Player model fractional SD | 46.91 | 9.60 | 5.79 | 1.55 | 5.22 | 5.20 | 12.36 |
| Simulation box CIN | 33 | 6 | 3 | 2 | 3 | 2 | 7 |
| Simulation box SD | 36 | 9 | 2 | 2 | 2 | 3 | 5 |
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 CIN | Starter | Andrew Abbott | 5 | 0 | 4 | 5 | 2 | 3.73 | 1.32 | True |
| Away CIN | Middle Reliever | Brock Burke | 1 | 1 | 0 | 1 | 1 | 3.55 | 1.20 | True |
| Away CIN | Middle Reliever | Sam Moll | 1 | 0 | 0 | 0 | 0 | 3.88 | 1.11 | True |
| Away CIN | Middle Reliever | Tejay Antone | 1 | 0 | 0 | 1 | 0 | 3.61 | 1.37 | True |
| Away CIN | Middle Reliever | Tony Santillan | 1 | 1 | 1 | 2 | 0 | 6.37 | 1.54 | True |
| Home SD | Starter | Walker Buehler | 5.10 | 2 | 5 | 4 | 1 | 3.93 | 1.19 | True |
| Home SD | Middle Reliever | Adrian Morejon | 1.10 | 0 | 1 | 0 | 0 | 4.70 | 1.26 | True |
| Home SD | Middle Reliever | Mason Miller | 1.10 | 0 | 0 | 1 | 0 | 2.83 | 1.28 | True |
| Home SD | Middle Reliever | Jason Adam | 1 | 1 | 1 | 1 | 1 | 3.97 | 1.64 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | SD | batter | CF | Jackson Merrill | worse | 11 | 3 | 8 | 4 | 7 | predicted_H | 2.0800 | boost | better |
| away | CIN | batter | 1B | Sal Stewart | better | 11 | 5 | 6 | 6 | 5 | predicted_HR | 1.8500 | boost | better |
| home | SD | batter | LF | Samad Taylor | worse | 9 | 3 | 6 | 4 | 5 | predicted_H | 1.8000 | boost | better |
| home | SD | batter | 1B | Ty France | worse | 12 | 5 | 7 | 4 | 8 | predicted_AB | 1.5830 | boost | better |
| home | SD | batter | RF | Jase Bowen | worse | 8 | 2 | 6 | 3 | 5 | predicted_SO | -1.5000 | deboost | better |
| away | CIN | batter | 2B | Edwin Arroyo | better | 11 | 5 | 6 | 6 | 5 | predicted_H | 1.4400 | boost | better |
| away | CIN | batter | 3B | Eugenio Suárez | worse | 10 | 2 | 8 | 3 | 7 | predicted_SO | -1.2460 | deboost | better |
| away | CIN | batter | SS | Matt McLain | worse | 9 | 2 | 7 | 3 | 6 | predicted_SO | -1.0450 | deboost | better |
| away | CIN | batter | LF | JJ Bleday | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.0330 | boost | worse |
| home | SD | batter | 3B | Manny Machado | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 1.0270 | boost | worse |
| home | SD | batter | 2B | Fernando Tatis Jr. | better | 10 | 5 | 5 | 6 | 4 | predicted_SO | -0.9960 | deboost | better |
| away | CIN | batter | CF | Blake Dunn | worse | 11 | 3 | 8 | 2 | 9 | predicted_SO | 0.9180 | boost | worse |
| home | SD | batter | DH | Gavin Sheets | better | 11 | 7 | 4 | 6 | 5 | predicted_HR | 0.8700 | boost | better |
| home | SD | batter | C | Freddy Fermin | worse | 11 | 1 | 10 | 2 | 9 | predicted_AB | 0.8300 | boost | better |
| home | SD | batter | SS | Xander Bogaerts | worse | 11 | 2 | 9 | 1 | 10 | predicted_H | -0.8000 | deboost | worse |
| away | CIN | batter | C | Tyler Stephenson | worse | 10 | 1 | 9 | 2 | 8 | predicted_AB | 0.6970 | boost | better |
| away | CIN | pitcher | Starter | Andrew Abbott | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.6667 | deboost | worse |
| away | CIN | batter | RF | Noelvi Marte | worse | 10 | 1 | 9 | 0 | 10 | predicted_H | -0.6400 | deboost | worse |
| away | CIN | batter | DH | Nathaniel Lowe | worse | 11 | 2 | 9 | 1 | 10 | predicted_BB | 0.5180 | boost | better |
| away | CIN | pitcher | Middle Reliever | Tejay Antone | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.3333 | boost | better |
| away | CIN | pitcher | Middle Reliever | Tony Santillan | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.3333 | boost | better |
| home | SD | pitcher | Middle Reliever | Jason Adam | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.3333 | boost | better |
| home | SD | pitcher | Starter | Walker Buehler | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| home | SD | pitcher | Middle Reliever | Adrian Morejon | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | SD | pitcher | Middle Reliever | Mason Miller | 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 | Andrew Abbott |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.5066 |
| ESPN Rank | 66 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1306 |
| Avg Velo | 87.3776 |
| Avg Spin | 2426.8469 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 0 |
| Pre H | 5 |
| Pre BB | 2 |
| Pre SO | 4 |
| Season ERA | 4.0631 |
| Season WHIP | 1.4417 |
| Role Avg IP | 5.2820 |
| Recent Avg IP | 5.6670 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"opponent": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"edges": {
"quality_edge": -0.108,
"offense_edge": -0.056,
"opponent_offense_edge": -0.1306,
"defense_strength": -0.1299,
"opponent_defense_weakness": -0.0499,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.997,
"run_prevention": 0.9975,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "671096",
"profile": {
"available": true,
"pitcher_id": "671096",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 240.0,
"k_percent": 15.8,
"bb_percent": 10.4,
"woba": 0.323,
"xwoba": 0.345,
"sweet_spot_percent": 31.5,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 38.4,
"avg_best_speed": 79.6363,
"avg_hyper_speed": 94.1034,
"whiff_percent": 21.2,
"swing_percent": 46.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4625,
"command_and_miss": -0.7514,
"regression_edge": -0.6286,
"xwoba_edge": -0.8714,
"barrel_edge": -0.1111,
"hard_hit_edge": 0.0286,
"whiff_edge": -0.6571,
"bb_edge": -0.325,
"pitch_design_score": -0.1306
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "671096",
"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": 87.3776045181183,
"release_spin_rate": 2426.846855788325,
"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": 87.3776045181183,
"release_spin_rate": 2426.846855788325,
"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.3776,
"release_spin_rate": 2426.8469,
"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.1306,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.933,
"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.5066,
"sample_weight": 0.96,
"run_prevention_factor": 1.0431,
"strikeout_factor": 0.9358,
"walk_factor": 1.025,
"homer_factor": 1.0325,
"woba_minus_xwoba": -0.022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671096",
"espn_id": 4414528,
"player_name": "Andrew Abbott",
"team": "CIN",
"role": "pitcher",
"espn_rank": 66,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 66,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 5.0,
"qs_rank": 39,
"era_value": 4.0631,
"era_rank": 46.0,
"w_value": 4.0,
"w_rank": 52,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 68.2,
"ip_rank": 51,
"h_value": 68.0,
"h_rank": 29,
"er_value": 31.0,
"er_rank": 54,
"hr_value": 9.0,
"hr_rank": 48,
"bb_value": 31.0,
"bb_rank": 9,
"k_value": 47.0,
"k_rank": 103,
"k_per_9_value": 6.1601944,
"k_per_9_rank": 54,
"whip_value": 1.4417,
"whip_rank": 62.0,
"war_value": 1.12,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0414,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.0414,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 1.024,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0312,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9384,
"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": 51.2,
"ER": 25,
"H": 50,
"BB": 25,
"SO": 36,
"HR": 8,
"ERA": 4.35483870967742,
"WHIP": 1.4516129032258065,
"K9": 6.270967741935484,
"HR9": 1.3935483870967742,
"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-02T00:00:00"
}{
"available": true,
"pitcher_id": "671096",
"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": 87.3776045181183,
"release_spin_rate": 2426.846855788325,
"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": 87.3776045181183,
"release_spin_rate": 2426.846855788325,
"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.3776,
"release_spin_rate": 2426.8469,
"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.1306,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.933,
"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": "671096",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 28.1,
"ER": 8.0,
"R": 9.0,
"H": 21.0,
"BB": 12.0,
"SO": 19.0,
"HR": 4.0,
"BF": 116.0,
"Pitches": 477.0
},
"per_game": {
"IP": 5.2,
"ER": 1.6,
"R": 1.8,
"H": 4.2,
"BB": 2.4,
"SO": 3.8,
"HR": 0.8,
"BF": 23.2,
"Pitches": 95.4
},
"rates": {
"ERA": 2.5412,
"WHIP": 1.1647,
"ER_per_IP": 0.28235,
"H_per_IP": 0.74118,
"BB_per_IP": 0.42353,
"SO_per_IP": 0.67059,
"HR_per_IP": 0.14118
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 51.2,
"ER": 25.0,
"R": 27.0,
"H": 50.0,
"BB": 25.0,
"SO": 36.0,
"HR": 8.0,
"BF": 226.0,
"Pitches": 918.0
},
"per_game": {
"IP": 5.1,
"ER": 2.5,
"R": 2.7,
"H": 5.0,
"BB": 2.5,
"SO": 3.6,
"HR": 0.8,
"BF": 22.6,
"Pitches": 91.8
},
"rates": {
"ERA": 4.3548,
"WHIP": 1.4516,
"ER_per_IP": 0.48387,
"H_per_IP": 0.96774,
"BB_per_IP": 0.48387,
"SO_per_IP": 0.69677,
"HR_per_IP": 0.15484
}
},
"season": {
"games": 13,
"totals": {
"IP": 68.2,
"ER": 31.0,
"R": 33.0,
"H": 68.0,
"BB": 31.0,
"SO": 47.0,
"HR": 9.0,
"BF": 298.0,
"Pitches": 1180.0
},
"per_game": {
"IP": 5.1,
"ER": 2.3846,
"R": 2.5385,
"H": 5.2308,
"BB": 2.3846,
"SO": 3.6154,
"HR": 0.6923,
"BF": 22.9231,
"Pitches": 90.7692
},
"rates": {
"ERA": 4.0631,
"WHIP": 1.4417,
"ER_per_IP": 0.45146,
"H_per_IP": 0.99029,
"BB_per_IP": 0.45146,
"SO_per_IP": 0.68447,
"HR_per_IP": 0.13107
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.291,
"predicted_H": 4.951,
"predicted_BB": 2.36,
"predicted_SO": 4.165,
"predicted_HR": 0.789,
"predicted_ERA": 3.7257,
"predicted_WHIP": 1.3209
}
}{
"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": 0.0,
"form": 2.291,
"final": 1.2203,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 4.951,
"final": 4.9739,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 2.36,
"final": 2.1917,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 4.165,
"final": 4.0879,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.789,
"final": 0.4202,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7257,
"final": 3.7257,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3209,
"final": 1.3209,
"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 | Brock Burke |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1378 |
| ESPN Rank | 196 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1137 |
| Avg Velo | 91.7400 |
| Avg Spin | 2260.8487 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 3.2637 |
| Season WHIP | 1.3846 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"opponent": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"edges": {
"quality_edge": -0.108,
"offense_edge": -0.056,
"opponent_offense_edge": -0.1306,
"defense_strength": -0.1299,
"opponent_defense_weakness": -0.0499,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.997,
"run_prevention": 0.9975,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656271",
"profile": {
"available": true,
"pitcher_id": "656271",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 100.0,
"k_percent": 21.8,
"bb_percent": 14.3,
"woba": 0.312,
"xwoba": 0.338,
"sweet_spot_percent": 36.9,
"barrel_batted_rate": 11.5,
"hard_hit_percent": 32.1,
"avg_best_speed": 77.3812,
"avg_hyper_speed": 93.4105,
"whiff_percent": 30.0,
"swing_percent": 43.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.3744,
"command_and_miss": -0.1207,
"regression_edge": -0.7429,
"xwoba_edge": -0.6714,
"barrel_edge": -0.9778,
"hard_hit_edge": 0.9286,
"whiff_edge": 0.6,
"bb_edge": -1.3,
"pitch_design_score": 0.1137
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656271",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 4,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 4,
"pitch_usage": 0.0,
"release_speed": 91.74001689285609,
"release_spin_rate": 2260.848724281115,
"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": 4,
"pitch_usage": 0.0,
"release_speed": 91.74001689285609,
"release_spin_rate": 2260.848724281115,
"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.74,
"release_spin_rate": 2260.8487,
"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.1137,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8119,
"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.1378,
"sample_weight": 0.45,
"run_prevention_factor": 1.0117,
"strikeout_factor": 1.008,
"walk_factor": 1.0468,
"homer_factor": 1.0275,
"woba_minus_xwoba": -0.026,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656271",
"espn_id": 39945,
"player_name": "Brock Burke",
"team": "CIN",
"role": "pitcher",
"espn_rank": 196,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 196,
"gp_value": 32.0,
"gp_rank": 5,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.2637,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 30.1,
"ip_rank": 193,
"h_value": 23.0,
"h_rank": 252,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 29.0,
"k_rank": 218,
"k_per_9_value": 8.604396,
"k_per_9_rank": 30,
"whip_value": 1.3846,
"whip_rank": null,
"war_value": 0.41,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0053,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0053,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0211,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0124,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0036,
"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": 4,
"H": 5,
"BB": 5,
"SO": 4,
"HR": 2,
"ERA": 4.153846153846154,
"WHIP": 1.153846153846154,
"K9": 4.153846153846154,
"HR9": 2.076923076923077,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "656271",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 4,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 4,
"pitch_usage": 0.0,
"release_speed": 91.74001689285609,
"release_spin_rate": 2260.848724281115,
"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": 4,
"pitch_usage": 0.0,
"release_speed": 91.74001689285609,
"release_spin_rate": 2260.848724281115,
"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.74,
"release_spin_rate": 2260.8487,
"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.1137,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8119,
"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.99,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.545,
"prior_weight": 0.455
},
"role": "pitcher",
"player_id": "656271",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 3.0,
"SO": 4.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 82.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 0.6,
"SO": 0.8,
"HR": 0.2,
"BF": 4.2,
"Pitches": 16.4
},
"rates": {
"ERA": 1.6875,
"WHIP": 0.9375,
"ER_per_IP": 0.1875,
"H_per_IP": 0.375,
"BB_per_IP": 0.5625,
"SO_per_IP": 0.75,
"HR_per_IP": 0.1875
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 4.0,
"R": 4.0,
"H": 5.0,
"BB": 5.0,
"SO": 4.0,
"HR": 2.0,
"BF": 36.0,
"Pitches": 140.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.5,
"BB": 0.5,
"SO": 0.4,
"HR": 0.2,
"BF": 3.6,
"Pitches": 14.0
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.1538,
"ER_per_IP": 0.46154,
"H_per_IP": 0.57692,
"BB_per_IP": 0.57692,
"SO_per_IP": 0.46154,
"HR_per_IP": 0.23077
}
},
"season": {
"games": 32,
"totals": {
"IP": 30.1,
"ER": 11.0,
"R": 15.0,
"H": 23.0,
"BB": 19.0,
"SO": 29.0,
"HR": 3.0,
"BF": 133.0,
"Pitches": 497.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3438,
"R": 0.4688,
"H": 0.7188,
"BB": 0.5938,
"SO": 0.9062,
"HR": 0.0938,
"BF": 4.1562,
"Pitches": 15.5312
},
"rates": {
"ERA": 3.2637,
"WHIP": 1.3846,
"ER_per_IP": 0.36264,
"H_per_IP": 0.75824,
"BB_per_IP": 0.62637,
"SO_per_IP": 0.95604,
"HR_per_IP": 0.0989
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.394,
"predicted_H": 0.72,
"predicted_BB": 0.482,
"predicted_SO": 0.801,
"predicted_HR": 0.164,
"predicted_ERA": 3.5473,
"predicted_WHIP": 1.2024
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5422,
"form_weight": 0.4578,
"form_reliability": 0.545,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.99,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.545,
"prior_weight": 0.455
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.394,
"final": 0.7226,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.72,
"final": 0.8718,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.482,
"final": 0.7629,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.801,
"final": 0.3667,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.164,
"final": 0.6173,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5473,
"final": 3.5473,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2024,
"final": 1.2024,
"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 Moll |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0540 |
| ESPN Rank | 241 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1965 |
| Avg Velo | 86.2015 |
| Avg Spin | 2519.8467 |
| 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 | 2.9634 |
| Season WHIP | 1.0610 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"opponent": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"edges": {
"quality_edge": -0.108,
"offense_edge": -0.056,
"opponent_offense_edge": -0.1306,
"defense_strength": -0.1299,
"opponent_defense_weakness": -0.0499,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.997,
"run_prevention": 0.9975,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "594580",
"profile": {
"available": true,
"pitcher_id": "594580",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 90.0,
"k_percent": 24.6,
"bb_percent": 11.9,
"woba": 0.29,
"xwoba": 0.312,
"sweet_spot_percent": 24.3,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 30.0,
"avg_best_speed": 77.2346,
"avg_hyper_speed": 93.5181,
"whiff_percent": 25.1,
"swing_percent": 40.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3851,
"command_and_miss": -0.0657,
"regression_edge": -0.6286,
"xwoba_edge": 0.0714,
"barrel_edge": 0.1778,
"hard_hit_edge": 1.2286,
"whiff_edge": -0.1,
"bb_edge": -0.7,
"pitch_design_score": -0.1965
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "594580",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 24,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 24,
"pitch_usage": 0.0,
"release_speed": 86.20146014772703,
"release_spin_rate": 2519.846651312634,
"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": 24,
"pitch_usage": 0.0,
"release_speed": 86.20146014772703,
"release_spin_rate": 2519.846651312634,
"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.2015,
"release_spin_rate": 2519.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.1965,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4035,
"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.054,
"sample_weight": 0.45,
"run_prevention_factor": 0.9954,
"strikeout_factor": 1.0026,
"walk_factor": 1.0252,
"homer_factor": 0.9705,
"woba_minus_xwoba": -0.022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "594580",
"espn_id": 34928,
"player_name": "Sam Moll",
"team": "CIN",
"role": "pitcher",
"espn_rank": 241,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 241,
"gp_value": 31.0,
"gp_rank": 7,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.9634,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 5.0,
"l_rank": 24,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 2.0,
"hld_rank": 158,
"ip_value": 27.1,
"ip_rank": 241,
"h_value": 19.0,
"h_rank": 301,
"er_value": 9.0,
"er_rank": 314,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 14.0,
"bb_rank": 182,
"k_value": 29.0,
"k_rank": 218,
"k_per_9_value": 9.54878,
"k_per_9_rank": 24,
"whip_value": 1.2073,
"whip_rank": null,
"war_value": 0.26,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9979,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9979,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0113,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9867,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0012,
"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": 2,
"H": 4,
"BB": 2,
"SO": 11,
"HR": 1,
"ERA": 2.1599999999999997,
"WHIP": 0.72,
"K9": 11.879999999999999,
"HR9": 1.0799999999999998,
"games_pitched": 9,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "594580",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 24,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 24,
"pitch_usage": 0.0,
"release_speed": 86.20146014772703,
"release_spin_rate": 2519.846651312634,
"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": 24,
"pitch_usage": 0.0,
"release_speed": 86.20146014772703,
"release_spin_rate": 2519.846651312634,
"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.2015,
"release_spin_rate": 2519.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.1965,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4035,
"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.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"role": "pitcher",
"player_id": "594580",
"report_date": "20260608_C",
"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": 2.0,
"BB": 2.0,
"SO": 6.0,
"HR": 1.0,
"BF": 17.0,
"Pitches": 84.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.4,
"BB": 0.4,
"SO": 1.2,
"HR": 0.2,
"BF": 3.4,
"Pitches": 16.8
},
"rates": {
"ERA": 4.1538,
"WHIP": 0.9231,
"ER_per_IP": 0.46154,
"H_per_IP": 0.46154,
"BB_per_IP": 0.46154,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 3.0,
"R": 3.0,
"H": 5.0,
"BB": 3.0,
"SO": 13.0,
"HR": 1.0,
"BF": 37.0,
"Pitches": 157.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.5,
"BB": 0.3,
"SO": 1.3,
"HR": 0.1,
"BF": 3.7,
"Pitches": 15.7
},
"rates": {
"ERA": 2.7931,
"WHIP": 0.8276,
"ER_per_IP": 0.31034,
"H_per_IP": 0.51724,
"BB_per_IP": 0.31034,
"SO_per_IP": 1.34483,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 29,
"totals": {
"IP": 27.1,
"ER": 9.0,
"R": 11.0,
"H": 16.0,
"BB": 13.0,
"SO": 29.0,
"HR": 3.0,
"BF": 113.0,
"Pitches": 466.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3103,
"R": 0.3793,
"H": 0.5517,
"BB": 0.4483,
"SO": 1.0,
"HR": 0.1034,
"BF": 3.8966,
"Pitches": 16.069
},
"rates": {
"ERA": 2.9634,
"WHIP": 1.061,
"ER_per_IP": 0.32927,
"H_per_IP": 0.58537,
"BB_per_IP": 0.47561,
"SO_per_IP": 1.06098,
"HR_per_IP": 0.10976
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.432,
"predicted_H": 0.723,
"predicted_BB": 0.389,
"predicted_SO": 1.127,
"predicted_HR": 0.151,
"predicted_ERA": 3.8838,
"predicted_WHIP": 1.1119
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5532,
"form_weight": 0.4468,
"form_reliability": 0.5191,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.432,
"final": 0.193,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.723,
"final": 0.3231,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.389,
"final": 0.1738,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.127,
"final": 0.5036,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.151,
"final": 0.0675,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8838,
"final": 3.8838,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1119,
"final": 1.1119,
"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 | Tejay Antone |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0572 |
| ESPN Rank | 266 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2002 |
| Avg Velo | 86.1351 |
| Avg Spin | 2737.7151 |
| 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 | 3.7500 |
| Season WHIP | 1.1667 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"opponent": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"edges": {
"quality_edge": -0.108,
"offense_edge": -0.056,
"opponent_offense_edge": -0.1306,
"defense_strength": -0.1299,
"opponent_defense_weakness": -0.0499,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.997,
"run_prevention": 0.9975,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "622088",
"profile": {
"available": true,
"pitcher_id": "622088",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 30.0,
"k_percent": 24.0,
"bb_percent": 8.0,
"woba": 0.287,
"xwoba": 0.322,
"sweet_spot_percent": 27.3,
"barrel_batted_rate": 9.7,
"hard_hit_percent": 42.4,
"avg_best_speed": 79.4697,
"avg_hyper_speed": 93.9302,
"whiff_percent": 27.3,
"swing_percent": 45.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1128,
"command_and_miss": 0.2007,
"regression_edge": -1.0,
"xwoba_edge": -0.2143,
"barrel_edge": -0.5778,
"hard_hit_edge": -0.5429,
"whiff_edge": 0.2143,
"bb_edge": 0.275,
"pitch_design_score": -0.2002
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "622088",
"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": 86.13507506747638,
"release_spin_rate": 2737.715144230769,
"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": 86.13507506747638,
"release_spin_rate": 2737.715144230769,
"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.1351,
"release_spin_rate": 2737.7151,
"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.2002,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4301,
"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.0572,
"sample_weight": 0.45,
"run_prevention_factor": 1.0049,
"strikeout_factor": 1.0067,
"walk_factor": 0.9901,
"homer_factor": 1.0335,
"woba_minus_xwoba": -0.035,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "622088",
"espn_id": 42355,
"player_name": "Tejay Antone",
"team": "CIN",
"role": "pitcher",
"espn_rank": 266,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 266,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.75,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 1.0,
"hld_rank": 189,
"ip_value": 12.0,
"ip_rank": 438,
"h_value": 10.0,
"h_rank": 459,
"er_value": 5.0,
"er_rank": 459,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 4.0,
"bb_rank": 477,
"k_value": 12.0,
"k_rank": 428,
"k_per_9_value": 9.0,
"k_per_9_rank": 26,
"whip_value": 1.1666,
"whip_rank": null,
"war_value": 0.2,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0022,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0022,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9955,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0151,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.003,
"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": 4,
"H": 9,
"BB": 4,
"SO": 10,
"HR": 1,
"ERA": 3.6,
"WHIP": 1.3,
"K9": 9.0,
"HR9": 0.9,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "622088",
"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": 86.13507506747638,
"release_spin_rate": 2737.715144230769,
"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": 86.13507506747638,
"release_spin_rate": 2737.715144230769,
"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.1351,
"release_spin_rate": 2737.7151,
"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.2002,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4301,
"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.37,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3215,
"prior_weight": 0.6785
},
"role": "pitcher",
"player_id": "622088",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 0.0,
"H": 5.0,
"BB": 3.0,
"SO": 5.0,
"HR": 0.0,
"BF": 21.0,
"Pitches": 85.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 4.2,
"Pitches": 17.0
},
"rates": {
"ERA": 0.0,
"WHIP": 1.7143,
"ER_per_IP": 0.0,
"H_per_IP": 1.07143,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 4.0,
"R": 4.0,
"H": 9.0,
"BB": 4.0,
"SO": 10.0,
"HR": 1.0,
"BF": 43.0,
"Pitches": 165.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.9,
"BB": 0.4,
"SO": 1.0,
"HR": 0.1,
"BF": 4.3,
"Pitches": 16.5
},
"rates": {
"ERA": 3.6,
"WHIP": 1.3,
"ER_per_IP": 0.4,
"H_per_IP": 0.9,
"BB_per_IP": 0.4,
"SO_per_IP": 1.0,
"HR_per_IP": 0.1
}
},
"season": {
"games": 12,
"totals": {
"IP": 12.0,
"ER": 5.0,
"R": 5.0,
"H": 10.0,
"BB": 4.0,
"SO": 12.0,
"HR": 1.0,
"BF": 50.0,
"Pitches": 193.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4167,
"R": 0.4167,
"H": 0.8333,
"BB": 0.3333,
"SO": 1.0,
"HR": 0.0833,
"BF": 4.1667,
"Pitches": 16.0833
},
"rates": {
"ERA": 3.75,
"WHIP": 1.1667,
"ER_per_IP": 0.41667,
"H_per_IP": 0.83333,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.0,
"HR_per_IP": 0.08333
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.31,
"predicted_H": 0.743,
"predicted_BB": 0.315,
"predicted_SO": 0.747,
"predicted_HR": 0.086,
"predicted_ERA": 3.6068,
"predicted_WHIP": 1.3663
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6367,
"form_weight": 0.3633,
"form_reliability": 0.3215,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.37,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3215,
"prior_weight": 0.6785
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.31,
"final": 0.1126,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.743,
"final": 0.9066,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.315,
"final": 0.1145,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.747,
"final": 0.2714,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.086,
"final": 0.0312,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6068,
"final": 3.6068,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3663,
"final": 1.3663,
"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 | Tony Santillan |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.4722 |
| ESPN Rank | 617 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0540 |
| Avg Velo | 90.6750 |
| Avg Spin | 2286.4736 |
| 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 | 4.8082 |
| Season WHIP | 1.3973 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"opponent": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"edges": {
"quality_edge": -0.108,
"offense_edge": -0.056,
"opponent_offense_edge": -0.1306,
"defense_strength": -0.1299,
"opponent_defense_weakness": -0.0499,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.997,
"run_prevention": 0.9975,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663574",
"profile": {
"available": true,
"pitcher_id": "663574",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 91.0,
"k_percent": 21.1,
"bb_percent": 11.9,
"woba": 0.397,
"xwoba": 0.376,
"sweet_spot_percent": 39.7,
"barrel_batted_rate": 13.9,
"hard_hit_percent": 50.7,
"avg_best_speed": 83.6612,
"avg_hyper_speed": 95.3367,
"whiff_percent": 20.7,
"swing_percent": 43.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.7515,
"command_and_miss": -0.5107,
"regression_edge": 0.6,
"xwoba_edge": -1.7571,
"barrel_edge": -1.5111,
"hard_hit_edge": -1.7286,
"whiff_edge": -0.7286,
"bb_edge": -0.7,
"pitch_design_score": 0.054
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663574",
"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": 90.67498571705188,
"release_spin_rate": 2286.473589459677,
"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": 90.67498571705188,
"release_spin_rate": 2286.473589459677,
"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.675,
"release_spin_rate": 2286.4736,
"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.054,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.3859,
"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.4722,
"sample_weight": 0.45,
"run_prevention_factor": 1.0401,
"strikeout_factor": 0.9823,
"walk_factor": 1.0252,
"homer_factor": 1.1092,
"woba_minus_xwoba": 0.021,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663574",
"espn_id": 40950,
"player_name": "Tony Santillan",
"team": "CIN",
"role": "pitcher",
"espn_rank": 617,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 617,
"gp_value": 28.0,
"gp_rank": 39,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.2876,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 2.0,
"sv_rank": 51,
"hld_value": 11.0,
"hld_rank": 8,
"ip_value": 24.1,
"ip_rank": 297,
"h_value": 25.0,
"h_rank": 224,
"er_value": 17.0,
"er_rank": 160,
"hr_value": 9.0,
"hr_rank": 48,
"bb_value": 13.0,
"bb_rank": 201,
"k_value": 23.0,
"k_rank": 286,
"k_per_9_value": 8.506849,
"k_per_9_rank": 26,
"whip_value": 1.5616,
"whip_rank": null,
"war_value": -0.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.018,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.018,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0113,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0491,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.992,
"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": 7,
"H": 9,
"BB": 4,
"SO": 6,
"HR": 3,
"ERA": 7.560000000000001,
"WHIP": 1.5600000000000003,
"K9": 6.480000000000001,
"HR9": 3.2400000000000007,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "663574",
"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": 90.67498571705188,
"release_spin_rate": 2286.473589459677,
"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": 90.67498571705188,
"release_spin_rate": 2286.473589459677,
"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.675,
"release_spin_rate": 2286.4736,
"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.054,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.3859,
"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.805,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4901,
"prior_weight": 0.5099
},
"role": "pitcher",
"player_id": "663574",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.1,
"ER": 4.0,
"R": 4.0,
"H": 5.0,
"BB": 2.0,
"SO": 2.0,
"HR": 1.0,
"BF": 18.0,
"Pitches": 69.0
},
"per_game": {
"IP": 0.2,
"ER": 0.8,
"R": 0.8,
"H": 1.0,
"BB": 0.4,
"SO": 0.4,
"HR": 0.2,
"BF": 3.6,
"Pitches": 13.8
},
"rates": {
"ERA": 10.8,
"WHIP": 2.1,
"ER_per_IP": 1.2,
"H_per_IP": 1.5,
"BB_per_IP": 0.6,
"SO_per_IP": 0.6,
"HR_per_IP": 0.3
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 7.0,
"R": 8.0,
"H": 9.0,
"BB": 4.0,
"SO": 6.0,
"HR": 3.0,
"BF": 39.0,
"Pitches": 154.0
},
"per_game": {
"IP": 0.2,
"ER": 0.7,
"R": 0.8,
"H": 0.9,
"BB": 0.4,
"SO": 0.6,
"HR": 0.3,
"BF": 3.9,
"Pitches": 15.4
},
"rates": {
"ERA": 7.56,
"WHIP": 1.56,
"ER_per_IP": 0.84,
"H_per_IP": 1.08,
"BB_per_IP": 0.48,
"SO_per_IP": 0.72,
"HR_per_IP": 0.36
}
},
"season": {
"games": 27,
"totals": {
"IP": 24.1,
"ER": 13.0,
"R": 14.0,
"H": 21.0,
"BB": 13.0,
"SO": 23.0,
"HR": 7.0,
"BF": 105.0,
"Pitches": 397.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4815,
"R": 0.5185,
"H": 0.7778,
"BB": 0.4815,
"SO": 0.8519,
"HR": 0.2593,
"BF": 3.8889,
"Pitches": 14.7037
},
"rates": {
"ERA": 4.8082,
"WHIP": 1.3973,
"ER_per_IP": 0.53425,
"H_per_IP": 0.86301,
"BB_per_IP": 0.53425,
"SO_per_IP": 0.94521,
"HR_per_IP": 0.28767
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.495,
"predicted_H": 0.762,
"predicted_BB": 0.317,
"predicted_SO": 0.577,
"predicted_HR": 0.159,
"predicted_ERA": 6.3749,
"predicted_WHIP": 1.5418
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5654,
"form_weight": 0.4346,
"form_reliability": 0.4901,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.805,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4901,
"prior_weight": 0.5099
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.495,
"final": 0.7805,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.762,
"final": 1.462,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.317,
"final": 0.1378,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.577,
"final": 0.8162,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.159,
"final": 0.6345,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.3749,
"final": 6.3749,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5418,
"final": 1.5418,
"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.256 | 0.000 | 0.000 | Hitting_2B | 0.256 | 0.000 | -0.256 | 0.000 |
| predicted_3B | 0.033 | 0.000 | 0.000 | Hitting_3B | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_AB | 4.250 | 4.000 | 6.000 | Hitting_AB | 3.851 | 4.000 | 0.149 | 0.000 |
| predicted_AVG | 0.234 | 0.000 | 0.167 | Hitting_AVG | 0.275 | 0.000 | -0.275 | 0.000 |
| predicted_BB | 0.570 | 0.000 | 1.000 | Hitting_BB | 0.570 | 0.000 | -0.570 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.041 | 0.000 | -0.041 | 0.000 |
| predicted_H | 1.000 | 0.000 | 1.000 | Hitting_H | 1.058 | 0.000 | -1.058 | 0.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_OBP | 0.307 | 0.000 | 0.286 | Hitting_OBP | 0.365 | 0.000 | -0.365 | 0.000 |
| predicted_R | 0.579 | 0.000 | 1.000 | Hitting_R | 0.579 | 0.000 | -0.579 | 0.000 |
| predicted_RBI | 0.610 | 0.000 | 1.000 | Hitting_RBI | 0.868 | 0.000 | -0.868 | 0.000 |
| predicted_SLG | 0.446 | 0.000 | 0.167 | Hitting_SLG | 0.577 | 0.000 | -0.577 | 0.000 |
| predicted_SO | 0.967 | 2.000 | 1.000 | Hitting_SO | 0.967 | 0.000 | 1.033 | 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 | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.9670 -> 2.0000 (boost 1.0330, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 4.2500 -> 6.4803 (boost 2.2303, 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.3066 -> 0.3136 (boost 0.0070, better) | - | 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_BB: 0.7345 -> 1.0000 (boost 0.2655, better) | predicted_SO: 1.5295 -> 1.0000 (deboost -0.5295, better) | AB rounded to 6 (raw=6.48), rates preserved: AVG=0.236 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7419 -> 1.0000 (boost 0.2581, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4590 -> 0.1670 (deboost -0.2920, 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 -> 2.0000 (boost 1.0000, worse) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.4590 (boost 0.2920, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668709",
"player_name": "JJ Bleday",
"position": "LF",
"team": "CIN",
"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.256,
"predicted_3B": 0.033,
"predicted_AB": 4.25,
"predicted_AVG": 0.234,
"predicted_BB": 0.57,
"predicted_H": 1.0,
"predicted_HR": 0.2,
"predicted_OBP": 0.307,
"predicted_R": 0.579,
"predicted_RBI": 0.61,
"predicted_SLG": 0.446,
"predicted_SO": 0.967
},
"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.3473,
"predicted_3B": 0.0395,
"predicted_AB": 6.4803,
"predicted_AVG": 0.2372,
"predicted_BB": 0.7386,
"predicted_H": 1.5493,
"predicted_HBP": 0.004,
"predicted_HR": 0.346,
"predicted_OBP": 0.3066,
"predicted_R": 0.7598,
"predicted_RBI": 1.0624,
"predicted_SLG": 0.4575,
"predicted_SO": 1.5211
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.256,
"after": 0.3473,
"delta": 0.0913,
"percent_delta": 0.3566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.033,
"after": 0.0395,
"delta": 0.0065,
"percent_delta": 0.197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.25,
"after": 6.4803,
"delta": 2.2303,
"percent_delta": 0.5248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2372,
"delta": 0.0032,
"percent_delta": 0.0137,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.57,
"after": 0.7386,
"delta": 0.1686,
"percent_delta": 0.2958,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.5493,
"delta": 0.5493,
"percent_delta": 0.5493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.346,
"delta": 0.146,
"percent_delta": 0.73,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.3066,
"delta": -0.0004,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.579,
"after": 0.7598,
"delta": 0.1808,
"percent_delta": 0.3123,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.61,
"after": 1.0624,
"delta": 0.4524,
"percent_delta": 0.7416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.446,
"after": 0.4575,
"delta": 0.0115,
"percent_delta": 0.0258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.967,
"after": 1.5211,
"delta": 0.5541,
"percent_delta": 0.573,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.25,
"after": 6.4803,
"delta": 2.2303,
"percent_delta": 0.5248,
"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": 35
}
},
{
"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.3473,
"predicted_3B": 0.0395,
"predicted_AB": 6.4803,
"predicted_AVG": 0.2358,
"predicted_BB": 0.7345,
"predicted_H": 1.5278,
"predicted_HBP": 0.004,
"predicted_HR": 0.3401,
"predicted_OBP": 0.3136,
"predicted_R": 0.7419,
"predicted_RBI": 1.0373,
"predicted_SLG": 0.459,
"predicted_SO": 1.5295
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3473,
"after": 0.3473,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0395,
"after": 0.0395,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4803,
"after": 6.4803,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2372,
"after": 0.2358,
"delta": -0.0014,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7386,
"after": 0.7345,
"delta": -0.0041,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5493,
"after": 1.5278,
"delta": -0.0215,
"percent_delta": -0.0139,
"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.346,
"after": 0.3401,
"delta": -0.0059,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3066,
"after": 0.3136,
"delta": 0.007,
"percent_delta": 0.0228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7598,
"after": 0.7419,
"delta": -0.0179,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0624,
"after": 1.0373,
"delta": -0.0251,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4575,
"after": 0.459,
"delta": 0.0015,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.5211,
"after": 1.5295,
"delta": 0.0084,
"percent_delta": 0.0055,
"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.3066,
"after": 0.3136,
"delta": 0.007,
"percent_delta": 0.0228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.48), rates preserved: AVG=0.236 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.3473,
"after": 0.0,
"delta": -0.3473,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0395,
"after": 0.0,
"delta": -0.0395,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4803,
"after": 6.0,
"delta": -0.4803,
"percent_delta": -0.0741,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7345,
"after": 1.0,
"delta": 0.2655,
"percent_delta": 0.3615,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5278,
"after": 1.0,
"delta": -0.5278,
"percent_delta": -0.3455,
"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.3401,
"after": 0.0,
"delta": -0.3401,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0373,
"after": 1.0,
"delta": -0.0373,
"percent_delta": -0.036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.5295,
"after": 1.0,
"delta": -0.5295,
"percent_delta": -0.3462,
"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.7345,
"after": 1.0,
"delta": 0.2655,
"percent_delta": 0.3615,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5295,
"after": 1.0,
"delta": -0.5295,
"percent_delta": -0.3462,
"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": 6.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": 6.0,
"after": 6.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.7419,
"after": 1.0,
"delta": 0.2581,
"percent_delta": 0.3479,
"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.7419,
"after": 1.0,
"delta": 0.2581,
"percent_delta": 0.3479,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2358,
"after": 0.167,
"delta": -0.0688,
"percent_delta": -0.2918,
"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.3136,
"after": 0.286,
"delta": -0.0276,
"percent_delta": -0.088,
"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.459,
"after": 0.167,
"delta": -0.292,
"percent_delta": -0.6362,
"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.459,
"after": 0.167,
"delta": -0.292,
"percent_delta": -0.6362,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 2.0,
"delta": 1.0,
"percent_delta": 1.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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2358,
"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.3136,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.459,
"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.167,
"after": 0.2358,
"delta": 0.0688,
"percent_delta": 0.4117,
"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.286,
"after": 0.3136,
"delta": 0.0276,
"percent_delta": 0.0964,
"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.167,
"after": 0.459,
"delta": 0.292,
"percent_delta": 1.7484,
"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.167,
"after": 0.459,
"delta": 0.292,
"percent_delta": 1.7484,
"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.256,
"after": 0.0,
"delta": -0.256,
"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": 4.25,
"after": 4.0,
"delta": -0.25,
"percent_delta": -0.0588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2358,
"delta": 0.0018,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.57,
"after": 0.0,
"delta": -0.57,
"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.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.3136,
"delta": 0.0066,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.579,
"after": 0.0,
"delta": -0.579,
"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.446,
"after": 0.459,
"delta": 0.013,
"percent_delta": 0.0291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.967,
"after": 2.0,
"delta": 1.033,
"percent_delta": 1.0683,
"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.967,
"after": 2.0,
"delta": 1.033,
"percent_delta": 1.0683,
"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.256 | - |
| predicted_3B | 0.033 | - |
| predicted_AB | 4.250 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.570 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.307 | - |
| predicted_R | 0.579 | - |
| predicted_RBI | 0.610 | - |
| predicted_SLG | 0.446 | - |
| predicted_SO | 0.967 | - |
Final model 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.347 | 0.091 |
| predicted_3B | 0.040 | 0.006 |
| predicted_AB | 6.480 | 2.230 |
| predicted_AVG | 0.237 | 0.003 |
| predicted_BB | 0.739 | 0.169 |
| predicted_H | 1.549 | 0.549 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.346 | 0.146 |
| predicted_OBP | 0.307 | -0.000 |
| predicted_R | 0.760 | 0.181 |
| predicted_RBI | 1.062 | 0.452 |
| predicted_SLG | 0.458 | 0.012 |
| predicted_SO | 1.521 | 0.554 |
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.347 | 0.000 |
| predicted_3B | 0.040 | 0.000 |
| predicted_AB | 6.480 | 0.000 |
| predicted_AVG | 0.236 | -0.001 |
| predicted_BB | 0.735 | -0.004 |
| predicted_H | 1.528 | -0.021 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.340 | -0.006 |
| predicted_OBP | 0.314 | 0.007 |
| predicted_R | 0.742 | -0.018 |
| predicted_RBI | 1.037 | -0.025 |
| predicted_SLG | 0.459 | 0.002 |
| predicted_SO | 1.530 | 0.008 |
AB rounded to 6 (raw=6.48), rates preserved: AVG=0.236 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.347 |
| predicted_3B | 0.000 | -0.040 |
| predicted_AB | 6.000 | -0.480 |
| predicted_AVG | 0.167 | -0.069 |
| predicted_BB | 1.000 | 0.265 |
| predicted_H | 1.000 | -0.528 |
| predicted_HR | 0.000 | -0.340 |
| predicted_OBP | 0.286 | -0.028 |
| predicted_R | 1.000 | 0.258 |
| predicted_RBI | 1.000 | -0.037 |
| predicted_SLG | 0.167 | -0.292 |
| 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 | -2.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 | 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 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 5.000 | 0.1364 | 0.1364 | 0.1364 | 0.1364 | 0.0000 | 0.0454 | 0.0000 | 0.2273 |
| last_10 | 0.20 | 10 | - | 41.000 | 10.000 | 2.000 | 0.000 | 3.000 | 7.000 | 3.000 | 3.000 | 9.000 | 0.2439 | 0.2955 | 0.5122 | 0.2439 | 0.0732 | 0.1707 | 0.0732 | 0.2195 |
| season | 0.60 | 35 | - | 466.000 | 128.000 | 31.000 | 4.000 | 34.000 | 105.000 | 70.000 | 69.000 | 117.000 | 0.2747 | 0.3655 | 0.5773 | 0.2747 | 0.0730 | 0.2253 | 0.1481 | 0.2511 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4660 |
| predicted_3B | 0.0480 |
| predicted_AB | 9.3820 |
| predicted_AVG | 0.2414 |
| predicted_BB | 0.9580 |
| predicted_H | 2.2640 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.5360 |
| predicted_OBP | 0.3061 |
| predicted_R | 0.9950 |
| predicted_RBI | 1.6510 |
| predicted_SLG | 0.4725 |
| predicted_SO | 2.2420 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2560 | 0.4660 | 0.3473 | model_form_blend |
| predicted_3B | 0.0330 | 0.0480 | 0.0395 | model_form_blend |
| predicted_AB | 4.2500 | 9.3820 | 6.4803 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2414 | 0.2372 | model_form_blend |
| predicted_BB | 0.5700 | 0.9580 | 0.7386 | model_form_blend |
| predicted_H | 1.0000 | 2.2640 | 1.5493 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.2000 | 0.5360 | 0.3460 | model_form_blend |
| predicted_OBP | 0.3070 | 0.3061 | 0.3066 | model_form_blend |
| predicted_R | 0.5790 | 0.9950 | 0.7598 | model_form_blend |
| predicted_RBI | 0.6100 | 1.6510 | 1.0624 | model_form_blend |
| predicted_SLG | 0.4460 | 0.4725 | 0.4575 | model_form_blend |
| predicted_SO | 0.9670 | 2.2420 | 1.5211 | 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 | 121 |
| Season rows before report date | 121 |
| Report year | 2026 |
| Profile rows used | 121 |
| 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.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 | 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 | 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 | 20260607_CIN@STL |
| game_type | full |
| mlbID | 668709 |
| playerID | 668709 |
| playerName | JJ Bleday |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 19.4 |
| sl_bb_percent | 12.3 |
| sl_woba | 0.398 |
| sl_xwoba | 0.389 |
| sl_xba | 0.284 |
| sl_xslg | 0.521 |
| sl_sweet_spot_percent | 45.3 |
| sl_barrel_batted_rate | 12.4 |
| sl_hard_hit_percent | 50.0 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 20.3 |
| sl_whiff_percent | 26.6 |
| 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.115 | 0.000 | 0.000 | Hitting_2B | 0.109 | 0.000 | -0.109 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 4.328 | 4.000 | 6.000 | Hitting_AB | 4.125 | 5.000 | -0.125 | -1.000 |
| predicted_AVG | 0.254 | 0.250 | 0.167 | Hitting_AVG | 0.314 | 0.200 | -0.064 | 0.050 |
| predicted_BB | 0.328 | 0.000 | 0.000 | Hitting_BB | 0.312 | 0.000 | -0.312 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.078 | 0.000 | -0.078 | 0.000 |
| predicted_H | 0.430 | 1.000 | 1.000 | Hitting_H | 1.297 | 1.000 | -0.297 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_OBP | 0.311 | 0.250 | 0.167 | Hitting_OBP | 0.374 | 0.200 | -0.124 | 0.050 |
| predicted_R | 0.623 | 1.000 | 1.000 | Hitting_R | 0.609 | 0.000 | 0.391 | 1.000 |
| predicted_RBI | 0.170 | 0.000 | 0.000 | Hitting_RBI | 0.266 | 0.000 | -0.266 | 0.000 |
| predicted_SLG | 0.420 | 0.250 | 0.167 | Hitting_SLG | 0.417 | 0.200 | -0.167 | 0.050 |
| predicted_SO | 1.082 | 2.000 | 1.000 | Hitting_SO | 1.031 | 0.000 | 0.969 | 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.0820 -> 2.0000 (boost 0.9180, worse) |
| Biggest Deboost | predicted_AB: 4.3280 -> 4.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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.3280 -> 6.2369 (boost 1.9089, 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.4284 -> 0.3265 (deboost -0.1019, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 0 | 8 | 1 | 7 | - | predicted_H: 1.4156 -> 1.0000 (deboost -0.4156, worse) | AB rounded to 6 (raw=6.24), rates preserved: AVG=0.227 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8113 -> 1.0000 (boost 0.1887, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3265 -> 0.1670 (deboost -0.1595, 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: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3265 (boost 0.1595, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694362",
"player_name": "Blake Dunn",
"position": "CF",
"team": "CIN",
"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.115,
"predicted_3B": 0.016,
"predicted_AB": 4.328,
"predicted_AVG": 0.254,
"predicted_BB": 0.328,
"predicted_H": 0.43,
"predicted_HR": 0.05,
"predicted_OBP": 0.311,
"predicted_R": 0.623,
"predicted_RBI": 0.17,
"predicted_SLG": 0.42,
"predicted_SO": 1.082
},
"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.197,
"predicted_3B": 0.0181,
"predicted_AB": 6.2369,
"predicted_AVG": 0.2809,
"predicted_BB": 0.3855,
"predicted_H": 1.4356,
"predicted_HBP": 0.099,
"predicted_HR": 0.1315,
"predicted_OBP": 0.3311,
"predicted_R": 0.8309,
"predicted_RBI": 0.4087,
"predicted_SLG": 0.4284,
"predicted_SO": 1.4048
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.115,
"after": 0.197,
"delta": 0.082,
"percent_delta": 0.713,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0181,
"delta": 0.0021,
"percent_delta": 0.1313,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.328,
"after": 6.2369,
"delta": 1.9089,
"percent_delta": 0.4411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2809,
"delta": 0.0269,
"percent_delta": 0.1059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.328,
"after": 0.3855,
"delta": 0.0575,
"percent_delta": 0.1753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.43,
"after": 1.4356,
"delta": 1.0056,
"percent_delta": 2.3386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.1315,
"delta": 0.0815,
"percent_delta": 1.63,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.3311,
"delta": 0.0201,
"percent_delta": 0.0646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.623,
"after": 0.8309,
"delta": 0.2079,
"percent_delta": 0.3337,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.4087,
"delta": 0.2387,
"percent_delta": 1.4041,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.42,
"after": 0.4284,
"delta": 0.0084,
"percent_delta": 0.02,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.082,
"after": 1.4048,
"delta": 0.3228,
"percent_delta": 0.2983,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.328,
"after": 6.2369,
"delta": 1.9089,
"percent_delta": 0.4411,
"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": 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.197,
"predicted_3B": 0.0181,
"predicted_AB": 6.2369,
"predicted_AVG": 0.227,
"predicted_BB": 0.3834,
"predicted_H": 1.4156,
"predicted_HBP": 0.099,
"predicted_HR": 0.1293,
"predicted_OBP": 0.2717,
"predicted_R": 0.8113,
"predicted_RBI": 0.3991,
"predicted_SLG": 0.3265,
"predicted_SO": 1.4125
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.197,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0181,
"after": 0.0181,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.2369,
"after": 6.2369,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2809,
"after": 0.227,
"delta": -0.0539,
"percent_delta": -0.1919,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3855,
"after": 0.3834,
"delta": -0.0021,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4356,
"after": 1.4156,
"delta": -0.02,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.099,
"after": 0.099,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1315,
"after": 0.1293,
"delta": -0.0022,
"percent_delta": -0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3311,
"after": 0.2717,
"delta": -0.0594,
"percent_delta": -0.1794,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8309,
"after": 0.8113,
"delta": -0.0196,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4087,
"after": 0.3991,
"delta": -0.0096,
"percent_delta": -0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4284,
"after": 0.3265,
"delta": -0.1019,
"percent_delta": -0.2379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4048,
"after": 1.4125,
"delta": 0.0077,
"percent_delta": 0.0055,
"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.4284,
"after": 0.3265,
"delta": -0.1019,
"percent_delta": -0.2379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.24), rates preserved: AVG=0.227 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.197,
"after": 0.0,
"delta": -0.197,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0181,
"after": 0.0,
"delta": -0.0181,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.2369,
"after": 6.0,
"delta": -0.2369,
"percent_delta": -0.038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3834,
"after": 0.0,
"delta": -0.3834,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4156,
"after": 1.0,
"delta": -0.4156,
"percent_delta": -0.2936,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.099,
"after": 0.0,
"delta": -0.099,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1293,
"after": 0.0,
"delta": -0.1293,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3991,
"after": 0.0,
"delta": -0.3991,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4125,
"after": 1.0,
"delta": -0.4125,
"percent_delta": -0.292,
"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": 1.4156,
"after": 1.0,
"delta": -0.4156,
"percent_delta": -0.2936,
"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": 6.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": 6.0,
"after": 6.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.8113,
"after": 1.0,
"delta": 0.1887,
"percent_delta": 0.2326,
"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.8113,
"after": 1.0,
"delta": 0.1887,
"percent_delta": 0.2326,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.167,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.227,
"after": 0.167,
"delta": -0.06,
"percent_delta": -0.2643,
"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.2717,
"after": 0.167,
"delta": -0.1047,
"percent_delta": -0.3854,
"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.3265,
"after": 0.167,
"delta": -0.1595,
"percent_delta": -0.4885,
"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.3265,
"after": 0.167,
"delta": -0.1595,
"percent_delta": -0.4885,
"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": 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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.227,
"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.2717,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3265,
"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.167,
"after": 0.227,
"delta": 0.06,
"percent_delta": 0.3592,
"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.167,
"after": 0.2717,
"delta": 0.1047,
"percent_delta": 0.6272,
"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.167,
"after": 0.3265,
"delta": 0.1595,
"percent_delta": 0.9553,
"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.167,
"after": 0.3265,
"delta": 0.1595,
"percent_delta": 0.9553,
"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.115,
"after": 0.0,
"delta": -0.115,
"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.328,
"after": 4.0,
"delta": -0.328,
"percent_delta": -0.0758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.227,
"delta": -0.027,
"percent_delta": -0.1063,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.328,
"after": 0.0,
"delta": -0.328,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.43,
"after": 1.0,
"delta": 0.57,
"percent_delta": 1.3256,
"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.311,
"after": 0.2717,
"delta": -0.0393,
"percent_delta": -0.1264,
"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.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.42,
"after": 0.3265,
"delta": -0.0935,
"percent_delta": -0.2226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.082,
"after": 2.0,
"delta": 0.918,
"percent_delta": 0.8484,
"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.082,
"after": 2.0,
"delta": 0.918,
"percent_delta": 0.8484,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.328,
"after": 4.0,
"delta": -0.328,
"percent_delta": -0.0758,
"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.115 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 4.328 | - |
| predicted_AVG | 0.254 | - |
| predicted_BB | 0.328 | - |
| predicted_H | 0.430 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.311 | - |
| predicted_R | 0.623 | - |
| predicted_RBI | 0.170 | - |
| predicted_SLG | 0.420 | - |
| predicted_SO | 1.082 | - |
Final model 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.082 |
| predicted_3B | 0.018 | 0.002 |
| predicted_AB | 6.237 | 1.909 |
| predicted_AVG | 0.281 | 0.027 |
| predicted_BB | 0.386 | 0.057 |
| predicted_H | 1.436 | 1.006 |
| predicted_HBP | 0.099 | - |
| predicted_HR | 0.132 | 0.082 |
| predicted_OBP | 0.331 | 0.020 |
| predicted_R | 0.831 | 0.208 |
| predicted_RBI | 0.409 | 0.239 |
| predicted_SLG | 0.428 | 0.008 |
| predicted_SO | 1.405 | 0.323 |
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.018 | 0.000 |
| predicted_AB | 6.237 | 0.000 |
| predicted_AVG | 0.227 | -0.054 |
| predicted_BB | 0.383 | -0.002 |
| predicted_H | 1.416 | -0.020 |
| predicted_HBP | 0.099 | 0.000 |
| predicted_HR | 0.129 | -0.002 |
| predicted_OBP | 0.272 | -0.059 |
| predicted_R | 0.811 | -0.020 |
| predicted_RBI | 0.399 | -0.010 |
| predicted_SLG | 0.327 | -0.102 |
| predicted_SO | 1.413 | 0.008 |
AB rounded to 6 (raw=6.24), rates preserved: AVG=0.227 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.197 |
| predicted_3B | 0.000 | -0.018 |
| predicted_AB | 6.000 | -0.237 |
| predicted_AVG | 0.167 | -0.060 |
| predicted_BB | 0.000 | -0.383 |
| predicted_H | 1.000 | -0.416 |
| predicted_HR | 0.000 | -0.129 |
| predicted_OBP | 0.167 | -0.105 |
| predicted_R | 1.000 | 0.189 |
| predicted_RBI | 0.000 | -0.399 |
| predicted_SLG | 0.167 | -0.160 |
| predicted_SO | 1.000 | -0.413 |
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 | -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 | 4.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 | - | 23.000 | 9.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 0.000 | 2.000 | 0.3913 | 0.3913 | 0.5652 | 0.3913 | 0.0435 | 0.1304 | 0.0000 | 0.0870 |
| last_10 | 0.20 | 10 | - | 45.000 | 13.000 | 2.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 9.000 | 0.2889 | 0.3043 | 0.4000 | 0.2889 | 0.0222 | 0.0667 | 0.0222 | 0.2000 |
| season | 0.60 | 21 | - | 264.000 | 83.000 | 7.000 | 1.000 | 6.000 | 17.000 | 38.000 | 20.000 | 66.000 | 0.3144 | 0.3737 | 0.4167 | 0.3144 | 0.0227 | 0.0644 | 0.0758 | 0.2500 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3090 |
| predicted_3B | 0.0210 |
| predicted_AB | 8.8460 |
| predicted_AVG | 0.3177 |
| predicted_BB | 0.4640 |
| predicted_H | 2.8100 |
| predicted_HBP | 0.0990 |
| predicted_HR | 0.2430 |
| predicted_OBP | 0.3586 |
| predicted_R | 1.1150 |
| predicted_RBI | 0.7350 |
| predicted_SLG | 0.4398 |
| predicted_SO | 1.8460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1150 | 0.3090 | 0.1970 | model_form_blend |
| predicted_3B | 0.0160 | 0.0210 | 0.0181 | model_form_blend |
| predicted_AB | 4.3280 | 8.8460 | 6.2369 | model_form_blend |
| predicted_AVG | 0.2540 | 0.3177 | 0.2809 | model_form_blend |
| predicted_BB | 0.3280 | 0.4640 | 0.3855 | model_form_blend |
| predicted_H | 0.4300 | 2.8100 | 1.4356 | model_form_blend |
| predicted_HBP | - | 0.0990 | 0.0990 | form_only |
| predicted_HR | 0.0500 | 0.2430 | 0.1315 | model_form_blend |
| predicted_OBP | 0.3110 | 0.3586 | 0.3311 | model_form_blend |
| predicted_R | 0.6230 | 1.1150 | 0.8309 | model_form_blend |
| predicted_RBI | 0.1700 | 0.7350 | 0.4087 | model_form_blend |
| predicted_SLG | 0.4200 | 0.4398 | 0.4284 | model_form_blend |
| predicted_SO | 1.0820 | 1.8460 | 1.4048 | 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 | 64 |
| Season rows before report date | 64 |
| 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 | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| 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 | 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 | 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 |
| gameID | 20260607_CIN@STL |
| game_type | full |
| mlbID | 694362 |
| playerID | 694362 |
| playerName | Blake Dunn |
| pos | RF |
| started | True |
| startingPosition | CF |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 20.8 |
| sl_bb_percent | 5.2 |
| sl_woba | 0.344 |
| sl_xwoba | 0.274 |
| sl_xba | 0.24 |
| sl_xslg | 0.326 |
| sl_sweet_spot_percent | 37.1 |
| sl_barrel_batted_rate | 4.4 |
| sl_hard_hit_percent | 30.0 |
| sl_exit_velocity_avg | 88.3 |
| sl_launch_angle_avg | 12.9 |
| sl_whiff_percent | 28.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.154 | 0.000 | 0.000 | Hitting_2B | 0.154 | 0.000 | -0.154 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.170 | 4.000 | 7.000 | Hitting_AB | 3.741 | 4.000 | 0.259 | 0.000 |
| predicted_AVG | 0.231 | 0.500 | 0.286 | Hitting_AVG | 0.247 | 0.000 | 0.253 | 0.500 |
| predicted_BB | 0.640 | 0.000 | 1.000 | Hitting_BB | 0.640 | 0.000 | -0.640 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_H | 0.960 | 2.000 | 2.000 | Hitting_H | 0.923 | 0.000 | 1.077 | 2.000 |
| predicted_HR | 0.150 | 2.000 | 0.000 | Hitting_HR | 0.198 | 0.000 | 1.802 | 2.000 |
| predicted_OBP | 0.317 | 0.500 | 0.375 | Hitting_OBP | 0.356 | 0.000 | 0.144 | 0.500 |
| predicted_R | 0.587 | 1.000 | 1.000 | Hitting_R | 0.587 | 0.000 | 0.413 | 1.000 |
| predicted_RBI | 0.540 | 2.000 | 1.000 | Hitting_RBI | 0.656 | 0.000 | 1.344 | 2.000 |
| predicted_SLG | 0.407 | 2.000 | 0.286 | Hitting_SLG | 0.447 | 0.000 | 1.553 | 2.000 |
| predicted_SO | 0.862 | 0.000 | 2.000 | Hitting_SO | 0.862 | 1.000 | -0.862 | -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_HR: 0.1500 -> 2.0000 (boost 1.8500, better) |
| Biggest Deboost | predicted_SO: 0.8620 -> 0.0000 (deboost -0.8620, 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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 4.1700 -> 6.8136 (boost 2.6436, better) | predicted_SLG: 0.4070 -> 0.3994 (deboost -0.0076, 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.3994 -> 0.3798 (deboost -0.0196, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 4 | 2 | 3 | 3 | predicted_H: 1.5354 -> 2.0000 (boost 0.4646, better) | predicted_2B: 0.3835 -> 0.0000 (deboost -0.3835, worse) | AB rounded to 7 (raw=6.81), rates preserved: AVG=0.225 HR/AB=0.033 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8037 -> 1.0000 (boost 0.1963, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2253 -> 0.2860 (boost 0.0607, better) | predicted_SLG: 0.3798 -> 0.2860 (deboost -0.0938, 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_HR: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3798 (boost 0.0938, better) | predicted_AVG: 0.2860 -> 0.2253 (deboost -0.0607, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "701398",
"player_name": "Sal Stewart",
"position": "1B",
"team": "CIN",
"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": 4.17,
"predicted_AVG": 0.231,
"predicted_BB": 0.64,
"predicted_H": 0.96,
"predicted_HR": 0.15,
"predicted_OBP": 0.317,
"predicted_R": 0.587,
"predicted_RBI": 0.54,
"predicted_SLG": 0.407,
"predicted_SO": 0.862
},
"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.3835,
"predicted_3B": 0.0004,
"predicted_AB": 6.8136,
"predicted_AVG": 0.2295,
"predicted_BB": 0.9982,
"predicted_H": 1.557,
"predicted_HBP": 0.028,
"predicted_HR": 0.2265,
"predicted_OBP": 0.3195,
"predicted_R": 0.8231,
"predicted_RBI": 0.9601,
"predicted_SLG": 0.3994,
"predicted_SO": 1.7323
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.154,
"after": 0.3835,
"delta": 0.2295,
"percent_delta": 1.4903,
"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.17,
"after": 6.8136,
"delta": 2.6436,
"percent_delta": 0.634,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2295,
"delta": -0.0015,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.64,
"after": 0.9982,
"delta": 0.3582,
"percent_delta": 0.5597,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.557,
"delta": 0.597,
"percent_delta": 0.6219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2265,
"delta": 0.0765,
"percent_delta": 0.51,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3195,
"delta": 0.0025,
"percent_delta": 0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.587,
"after": 0.8231,
"delta": 0.2361,
"percent_delta": 0.4022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.9601,
"delta": 0.4201,
"percent_delta": 0.778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.3994,
"delta": -0.0076,
"percent_delta": -0.0187,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.862,
"after": 1.7323,
"delta": 0.8703,
"percent_delta": 1.0096,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 8,
"deboosted_metrics": 1,
"better_metrics": 7,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.17,
"after": 6.8136,
"delta": 2.6436,
"percent_delta": 0.634,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.3994,
"delta": -0.0076,
"percent_delta": -0.0187,
"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.3835,
"predicted_3B": 0.0004,
"predicted_AB": 6.8136,
"predicted_AVG": 0.2253,
"predicted_BB": 0.9927,
"predicted_H": 1.5354,
"predicted_HBP": 0.028,
"predicted_HR": 0.2226,
"predicted_OBP": 0.3238,
"predicted_R": 0.8037,
"predicted_RBI": 0.9374,
"predicted_SLG": 0.3798,
"predicted_SO": 1.7418
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3835,
"after": 0.3835,
"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": 6.8136,
"after": 6.8136,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2295,
"after": 0.2253,
"delta": -0.0042,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.9982,
"after": 0.9927,
"delta": -0.0055,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.557,
"after": 1.5354,
"delta": -0.0216,
"percent_delta": -0.0139,
"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.2265,
"after": 0.2226,
"delta": -0.0039,
"percent_delta": -0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3195,
"after": 0.3238,
"delta": 0.0043,
"percent_delta": 0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8231,
"after": 0.8037,
"delta": -0.0194,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9601,
"after": 0.9374,
"delta": -0.0227,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3994,
"after": 0.3798,
"delta": -0.0196,
"percent_delta": -0.0491,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7323,
"after": 1.7418,
"delta": 0.0095,
"percent_delta": 0.0055,
"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.3994,
"after": 0.3798,
"delta": -0.0196,
"percent_delta": -0.0491,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.81), rates preserved: AVG=0.225 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3835,
"after": 0.0,
"delta": -0.3835,
"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": 6.8136,
"after": 7.0,
"delta": 0.1864,
"percent_delta": 0.0274,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9927,
"after": 1.0,
"delta": 0.0073,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5354,
"after": 2.0,
"delta": 0.4646,
"percent_delta": 0.3026,
"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.2226,
"after": 0.0,
"delta": -0.2226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9374,
"after": 1.0,
"delta": 0.0626,
"percent_delta": 0.0668,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7418,
"after": 2.0,
"delta": 0.2582,
"percent_delta": 0.1482,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 4,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.5354,
"after": 2.0,
"delta": 0.4646,
"percent_delta": 0.3026,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3835,
"after": 0.0,
"delta": -0.3835,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.8037,
"after": 1.0,
"delta": 0.1963,
"percent_delta": 0.2442,
"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": 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_R",
"before": 0.8037,
"after": 1.0,
"delta": 0.1963,
"percent_delta": 0.2442,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2253,
"after": 0.286,
"delta": 0.0607,
"percent_delta": 0.2694,
"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": 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_OBP",
"before": 0.3238,
"after": 0.375,
"delta": 0.0512,
"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": 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.3798,
"after": 0.286,
"delta": -0.0938,
"percent_delta": -0.247,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2253,
"after": 0.286,
"delta": 0.0607,
"percent_delta": 0.2694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3798,
"after": 0.286,
"delta": -0.0938,
"percent_delta": -0.247,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 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": 2.0,
"delta": 2.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": 2.0,
"after": 0.0,
"delta": -2.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_HR",
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2253,
"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.3238,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3798,
"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.286,
"after": 0.2253,
"delta": -0.0607,
"percent_delta": -0.2121,
"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": 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.375,
"after": 0.3238,
"delta": -0.0512,
"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": 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.286,
"after": 0.3798,
"delta": 0.0938,
"percent_delta": 0.3278,
"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.286,
"after": 0.3798,
"delta": 0.0938,
"percent_delta": 0.3278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2253,
"delta": -0.0607,
"percent_delta": -0.2121,
"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": 4.17,
"after": 4.0,
"delta": -0.17,
"percent_delta": -0.0408,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2253,
"delta": -0.0057,
"percent_delta": -0.0247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 2.0,
"delta": 1.04,
"percent_delta": 1.0833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 2.0,
"delta": 1.85,
"percent_delta": 12.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3238,
"delta": 0.0068,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.587,
"after": 1.0,
"delta": 0.413,
"percent_delta": 0.7036,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 2.0,
"delta": 1.46,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.3798,
"delta": -0.0272,
"percent_delta": -0.0668,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.862,
"after": 0.0,
"delta": -0.862,
"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.15,
"after": 2.0,
"delta": 1.85,
"percent_delta": 12.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.862,
"after": 0.0,
"delta": -0.862,
"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.154 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.170 | - |
| predicted_AVG | 0.231 | - |
| predicted_BB | 0.640 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.317 | - |
| predicted_R | 0.587 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.407 | - |
| predicted_SO | 0.862 | - |
Final model 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.384 | 0.230 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.814 | 2.644 |
| predicted_AVG | 0.230 | -0.002 |
| predicted_BB | 0.998 | 0.358 |
| predicted_H | 1.557 | 0.597 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.227 | 0.077 |
| predicted_OBP | 0.320 | 0.003 |
| predicted_R | 0.823 | 0.236 |
| predicted_RBI | 0.960 | 0.420 |
| predicted_SLG | 0.399 | -0.008 |
| predicted_SO | 1.732 | 0.870 |
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.384 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.814 | 0.000 |
| predicted_AVG | 0.225 | -0.004 |
| predicted_BB | 0.993 | -0.005 |
| predicted_H | 1.535 | -0.022 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.223 | -0.004 |
| predicted_OBP | 0.324 | 0.004 |
| predicted_R | 0.804 | -0.019 |
| predicted_RBI | 0.937 | -0.023 |
| predicted_SLG | 0.380 | -0.020 |
| predicted_SO | 1.742 | 0.010 |
AB rounded to 7 (raw=6.81), rates preserved: AVG=0.225 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.384 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.186 |
| predicted_AVG | 0.286 | 0.061 |
| predicted_BB | 1.000 | 0.007 |
| predicted_H | 2.000 | 0.465 |
| predicted_HR | 0.000 | -0.223 |
| predicted_OBP | 0.375 | 0.051 |
| predicted_R | 1.000 | 0.196 |
| predicted_RBI | 1.000 | 0.063 |
| predicted_SLG | 0.286 | -0.094 |
| predicted_SO | 2.000 | 0.258 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 2.000 | 2.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 | 0.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 | 3.000 | 2.000 | 0.000 | 0.000 | 2.000 | 1.000 | 2.000 | 8.000 | 0.1579 | 0.2381 | 0.2632 | 0.1579 | 0.0000 | 0.1053 | 0.1053 | 0.4210 |
| last_10 | 0.20 | 10 | - | 38.000 | 9.000 | 4.000 | 0.000 | 0.000 | 4.000 | 1.000 | 4.000 | 11.000 | 0.2368 | 0.3095 | 0.3421 | 0.2368 | 0.0000 | 0.1053 | 0.1053 | 0.2895 |
| season | 0.60 | 63 | - | 924.000 | 228.000 | 38.000 | 0.000 | 49.000 | 162.000 | 145.000 | 158.000 | 213.000 | 0.2468 | 0.3555 | 0.4470 | 0.2467 | 0.0530 | 0.1753 | 0.1710 | 0.2305 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6730 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.1480 |
| predicted_AVG | 0.2276 |
| predicted_BB | 1.4500 |
| predicted_H | 2.3100 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.3230 |
| predicted_OBP | 0.3226 |
| predicted_R | 1.1210 |
| predicted_RBI | 1.4900 |
| predicted_SLG | 0.3898 |
| predicted_SO | 2.8300 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1540 | 0.6730 | 0.3835 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.1700 | 10.1480 | 6.8136 | model_form_blend |
| predicted_AVG | 0.2310 | 0.2276 | 0.2295 | model_form_blend |
| predicted_BB | 0.6400 | 1.4500 | 0.9982 | model_form_blend |
| predicted_H | 0.9600 | 2.3100 | 1.5570 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1500 | 0.3230 | 0.2265 | model_form_blend |
| predicted_OBP | 0.3170 | 0.3226 | 0.3195 | model_form_blend |
| predicted_R | 0.5870 | 1.1210 | 0.8231 | model_form_blend |
| predicted_RBI | 0.5400 | 1.4900 | 0.9601 | model_form_blend |
| predicted_SLG | 0.4070 | 0.3898 | 0.3994 | model_form_blend |
| predicted_SO | 0.8620 | 2.8300 | 1.7323 | 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 | 247 |
| 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.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.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 | 3B |
| gameID | 20260607_CIN@STL |
| game_type | full |
| mlbID | 701398 |
| playerID | 701398 |
| playerName | Sal Stewart |
| pos | 1B |
| started | True |
| startingPosition | 3B |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 20.9 |
| sl_bb_percent | 12.2 |
| sl_woba | 0.35 |
| sl_xwoba | 0.359 |
| sl_xba | 0.258 |
| sl_xslg | 0.475 |
| sl_sweet_spot_percent | 35.7 |
| sl_barrel_batted_rate | 15.2 |
| sl_hard_hit_percent | 41.1 |
| sl_exit_velocity_avg | 90.7 |
| sl_launch_angle_avg | 14.4 |
| sl_whiff_percent | 26.8 |
| 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.204 | 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.336 | 3.000 | 5.000 | Hitting_AB | 3.288 | 3.000 | -0.288 | 0.000 |
| predicted_AVG | 0.237 | 0.000 | 0.200 | Hitting_AVG | 0.284 | 0.667 | -0.284 | -0.667 |
| predicted_BB | 0.482 | 1.000 | 1.000 | Hitting_BB | 0.475 | 0.000 | 0.525 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.300 | 0.000 | 1.000 | Hitting_H | 0.935 | 2.000 | -0.935 | -2.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.259 | 0.000 | -0.259 | 0.000 |
| predicted_OBP | 0.282 | 0.250 | 0.333 | Hitting_OBP | 0.375 | 0.667 | -0.125 | -0.417 |
| predicted_R | 0.460 | 0.000 | 1.000 | Hitting_R | 0.453 | 0.000 | -0.453 | 0.000 |
| predicted_RBI | 0.180 | 0.000 | 1.000 | Hitting_RBI | 0.669 | 0.000 | -0.669 | 0.000 |
| predicted_SLG | 0.402 | 0.000 | 0.200 | Hitting_SLG | 0.582 | 0.667 | -0.582 | -0.667 |
| predicted_SO | 0.854 | 1.000 | 1.000 | Hitting_SO | 0.842 | 0.000 | 0.158 | 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_BB: 0.4820 -> 1.0000 (boost 0.5180, better) |
| Biggest Deboost | predicted_R: 0.4600 -> 0.0000 (deboost -0.4600, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.3360 -> 5.0109 (boost 1.6749, 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.4196 -> 0.3485 (deboost -0.0711, 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 | 4 | 2 | predicted_RBI: 0.5378 -> 1.0000 (boost 0.4622, better) | predicted_SO: 1.3244 -> 1.0000 (deboost -0.3244, better) | AB rounded to 5 (raw=5.01), rates preserved: AVG=0.182 HR/AB=0.040 |
| 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.5402 -> 1.0000 (boost 0.4598, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2738 -> 0.3330 (boost 0.0592, better) | predicted_SLG: 0.3485 -> 0.2000 (deboost -0.1485, 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_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2000 -> 0.3485 (boost 0.1485, better) | predicted_OBP: 0.3330 -> 0.2738 (deboost -0.0592, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663993",
"player_name": "Nathaniel Lowe",
"position": "DH",
"team": "CIN",
"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.204,
"predicted_3B": 0.0,
"predicted_AB": 3.336,
"predicted_AVG": 0.237,
"predicted_BB": 0.482,
"predicted_H": 0.3,
"predicted_HR": 0.06,
"predicted_OBP": 0.282,
"predicted_R": 0.46,
"predicted_RBI": 0.18,
"predicted_SLG": 0.402,
"predicted_SO": 0.854
},
"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.237,
"predicted_3B": 0.0009,
"predicted_AB": 5.0109,
"predicted_AVG": 0.2391,
"predicted_BB": 0.6374,
"predicted_H": 0.9247,
"predicted_HBP": 0.004,
"predicted_HR": 0.202,
"predicted_OBP": 0.2975,
"predicted_R": 0.5533,
"predicted_RBI": 0.5508,
"predicted_SLG": 0.4196,
"predicted_SO": 1.3172
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.204,
"after": 0.237,
"delta": 0.033,
"percent_delta": 0.1618,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.336,
"after": 5.0109,
"delta": 1.6749,
"percent_delta": 0.5021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2391,
"delta": 0.0021,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.482,
"after": 0.6374,
"delta": 0.1554,
"percent_delta": 0.3224,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.9247,
"delta": 0.6247,
"percent_delta": 2.0823,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.202,
"delta": 0.142,
"percent_delta": 2.3667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.282,
"after": 0.2975,
"delta": 0.0155,
"percent_delta": 0.055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.46,
"after": 0.5533,
"delta": 0.0933,
"percent_delta": 0.2028,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.5508,
"delta": 0.3708,
"percent_delta": 2.06,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.402,
"after": 0.4196,
"delta": 0.0176,
"percent_delta": 0.0438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.854,
"after": 1.3172,
"delta": 0.4632,
"percent_delta": 0.5424,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.336,
"after": 5.0109,
"delta": 1.6749,
"percent_delta": 0.5021,
"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": 9,
"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.237,
"predicted_3B": 0.0009,
"predicted_AB": 5.0109,
"predicted_AVG": 0.182,
"predicted_BB": 0.6339,
"predicted_H": 0.9118,
"predicted_HBP": 0.004,
"predicted_HR": 0.1985,
"predicted_OBP": 0.2738,
"predicted_R": 0.5402,
"predicted_RBI": 0.5378,
"predicted_SLG": 0.3485,
"predicted_SO": 1.3244
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.237,
"after": 0.237,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0109,
"after": 5.0109,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2391,
"after": 0.182,
"delta": -0.0571,
"percent_delta": -0.2388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6374,
"after": 0.6339,
"delta": -0.0035,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9247,
"after": 0.9118,
"delta": -0.0129,
"percent_delta": -0.014,
"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.202,
"after": 0.1985,
"delta": -0.0035,
"percent_delta": -0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2975,
"after": 0.2738,
"delta": -0.0237,
"percent_delta": -0.0797,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5533,
"after": 0.5402,
"delta": -0.0131,
"percent_delta": -0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5508,
"after": 0.5378,
"delta": -0.013,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4196,
"after": 0.3485,
"delta": -0.0711,
"percent_delta": -0.1694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3172,
"after": 1.3244,
"delta": 0.0072,
"percent_delta": 0.0055,
"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.4196,
"after": 0.3485,
"delta": -0.0711,
"percent_delta": -0.1694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.01), rates preserved: AVG=0.182 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.237,
"after": 0.0,
"delta": -0.237,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0109,
"after": 5.0,
"delta": -0.0109,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6339,
"after": 1.0,
"delta": 0.3661,
"percent_delta": 0.5775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9118,
"after": 1.0,
"delta": 0.0882,
"percent_delta": 0.0967,
"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.1985,
"after": 0.0,
"delta": -0.1985,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5378,
"after": 1.0,
"delta": 0.4622,
"percent_delta": 0.8594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3244,
"after": 1.0,
"delta": -0.3244,
"percent_delta": -0.2449,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5378,
"after": 1.0,
"delta": 0.4622,
"percent_delta": 0.8594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3244,
"after": 1.0,
"delta": -0.3244,
"percent_delta": -0.2449,
"direction": "deboost",
"projection_effect": "better",
"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": 5.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": 5.0,
"after": 5.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.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": 5.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": 5.0,
"after": 5.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.5402,
"after": 1.0,
"delta": 0.4598,
"percent_delta": 0.8512,
"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.5402,
"after": 1.0,
"delta": 0.4598,
"percent_delta": 0.8512,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.182,
"after": 0.2,
"delta": 0.018,
"percent_delta": 0.0989,
"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.2738,
"after": 0.333,
"delta": 0.0592,
"percent_delta": 0.2162,
"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.3485,
"after": 0.2,
"delta": -0.1485,
"percent_delta": -0.4261,
"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.2738,
"after": 0.333,
"delta": 0.0592,
"percent_delta": 0.2162,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3485,
"after": 0.2,
"delta": -0.1485,
"percent_delta": -0.4261,
"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": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"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": 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_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.182,
"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.2738,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3485,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.182,
"delta": -0.018,
"percent_delta": -0.0901,
"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.2738,
"delta": -0.0592,
"percent_delta": -0.1777,
"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.2,
"after": 0.3485,
"delta": 0.1485,
"percent_delta": 0.7425,
"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.2,
"after": 0.3485,
"delta": 0.1485,
"percent_delta": 0.7425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2738,
"delta": -0.0592,
"percent_delta": -0.1777,
"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.204,
"after": 0.0,
"delta": -0.204,
"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.336,
"after": 3.0,
"delta": -0.336,
"percent_delta": -0.1007,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.182,
"delta": -0.055,
"percent_delta": -0.2321,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.482,
"after": 1.0,
"delta": 0.518,
"percent_delta": 1.0747,
"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.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.282,
"after": 0.2738,
"delta": -0.0082,
"percent_delta": -0.0291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.46,
"after": 0.0,
"delta": -0.46,
"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.402,
"after": 0.3485,
"delta": -0.0535,
"percent_delta": -0.1331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.854,
"after": 1.0,
"delta": 0.146,
"percent_delta": 0.171,
"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_BB",
"before": 0.482,
"after": 1.0,
"delta": 0.518,
"percent_delta": 1.0747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.46,
"after": 0.0,
"delta": -0.46,
"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.204 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.336 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.482 | - |
| predicted_H | 0.300 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.282 | - |
| predicted_R | 0.460 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.402 | - |
| predicted_SO | 0.854 | - |
Final model 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.033 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.011 | 1.675 |
| predicted_AVG | 0.239 | 0.002 |
| predicted_BB | 0.637 | 0.155 |
| predicted_H | 0.925 | 0.625 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.202 | 0.142 |
| predicted_OBP | 0.297 | 0.016 |
| predicted_R | 0.553 | 0.093 |
| predicted_RBI | 0.551 | 0.371 |
| predicted_SLG | 0.420 | 0.018 |
| predicted_SO | 1.317 | 0.463 |
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.001 | 0.000 |
| predicted_AB | 5.011 | 0.000 |
| predicted_AVG | 0.182 | -0.057 |
| predicted_BB | 0.634 | -0.003 |
| predicted_H | 0.912 | -0.013 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.199 | -0.004 |
| predicted_OBP | 0.274 | -0.024 |
| predicted_R | 0.540 | -0.013 |
| predicted_RBI | 0.538 | -0.013 |
| predicted_SLG | 0.348 | -0.071 |
| predicted_SO | 1.324 | 0.007 |
AB rounded to 5 (raw=5.01), rates preserved: AVG=0.182 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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=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 | 5.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 | 5.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.001 |
| predicted_AB | 5.000 | -0.011 |
| predicted_AVG | 0.200 | 0.018 |
| predicted_BB | 1.000 | 0.366 |
| predicted_H | 1.000 | 0.088 |
| predicted_HR | 0.000 | -0.199 |
| predicted_OBP | 0.333 | 0.059 |
| predicted_R | 1.000 | 0.460 |
| predicted_RBI | 1.000 | 0.462 |
| predicted_SLG | 0.200 | -0.148 |
| predicted_SO | 1.000 | -0.324 |
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 | 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 | - | 12.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.1667 | 0.1667 | 0.1667 | 0.1667 | 0.0000 | 0.0000 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 9 | - | 29.000 | 5.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 5.000 | 7.000 | 0.1724 | 0.2941 | 0.2759 | 0.1724 | 0.0345 | 0.1035 | 0.1724 | 0.2414 |
| season | 0.60 | 45 | - | 457.000 | 130.000 | 28.000 | 0.000 | 36.000 | 93.000 | 63.000 | 66.000 | 117.000 | 0.2845 | 0.3748 | 0.5821 | 0.2845 | 0.0788 | 0.2035 | 0.1444 | 0.2560 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2800 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.1940 |
| predicted_AVG | 0.2418 |
| predicted_BB | 0.8400 |
| predicted_H | 1.7390 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.3870 |
| predicted_OBP | 0.3177 |
| predicted_R | 0.6750 |
| predicted_RBI | 1.0340 |
| predicted_SLG | 0.4426 |
| predicted_SO | 1.9210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2040 | 0.2800 | 0.2370 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.3360 | 7.1940 | 5.0109 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2418 | 0.2391 | model_form_blend |
| predicted_BB | 0.4820 | 0.8400 | 0.6374 | model_form_blend |
| predicted_H | 0.3000 | 1.7390 | 0.9247 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0600 | 0.3870 | 0.2020 | model_form_blend |
| predicted_OBP | 0.2820 | 0.3177 | 0.2975 | model_form_blend |
| predicted_R | 0.4600 | 0.6750 | 0.5533 | model_form_blend |
| predicted_RBI | 0.1800 | 1.0340 | 0.5508 | model_form_blend |
| predicted_SLG | 0.4020 | 0.4426 | 0.4196 | model_form_blend |
| predicted_SO | 0.8540 | 1.9210 | 1.3172 | 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 | 139 |
| Season rows before report date | 139 |
| Report year | 2026 |
| Profile rows used | 137 |
| 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.284 |
| 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 | 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 | 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 | 20260607_CIN@STL |
| game_type | full |
| mlbID | 663993 |
| playerID | 663993 |
| playerName | Nathaniel Lowe |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.7 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.363 |
| sl_xwoba | 0.377 |
| sl_xba | 0.277 |
| sl_xslg | 0.525 |
| sl_sweet_spot_percent | 42.7 |
| sl_barrel_batted_rate | 14.3 |
| sl_hard_hit_percent | 43.7 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 13.3 |
| sl_whiff_percent | 21.9 |
| sl_swing_percent | 43.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.167 | 0.000 | 0.000 | Hitting_2B | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.710 | 4.000 | 6.000 | Hitting_AB | 3.667 | 4.000 | 0.333 | 0.000 |
| predicted_AVG | 0.213 | 0.250 | 0.167 | Hitting_AVG | 0.229 | 0.000 | 0.021 | 0.250 |
| predicted_BB | 0.405 | 0.000 | 1.000 | Hitting_BB | 0.405 | 0.000 | -0.405 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.790 | 1.000 | 1.000 | Hitting_H | 0.841 | 0.000 | 0.159 | 1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.087 | 0.000 | -0.087 | 0.000 |
| predicted_OBP | 0.278 | 0.250 | 0.286 | Hitting_OBP | 0.305 | 0.000 | -0.055 | 0.250 |
| predicted_R | 0.389 | 0.000 | 0.000 | Hitting_R | 0.389 | 0.000 | -0.389 | 0.000 |
| predicted_RBI | 0.420 | 0.000 | 1.000 | Hitting_RBI | 0.429 | 0.000 | -0.429 | 0.000 |
| predicted_SLG | 0.327 | 0.250 | 0.167 | Hitting_SLG | 0.346 | 0.000 | -0.096 | 0.250 |
| predicted_SO | 1.246 | 0.000 | 2.000 | Hitting_SO | 1.246 | 2.000 | -1.246 | -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 | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.7100 -> 4.0000 (boost 0.2900, better) |
| Biggest Deboost | predicted_SO: 1.2460 -> 0.0000 (deboost -1.2460, 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 | 8 | 6 | 2 | 5 | 3 | predicted_AB: 3.7100 -> 5.9653 (boost 2.2553, better) | predicted_SLG: 0.3270 -> 0.3048 (deboost -0.0222, 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.3048 -> 0.2942 (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 | 6 | 2 | 4 | 3 | 3 | predicted_RBI: 0.6122 -> 1.0000 (boost 0.3878, better) | predicted_2B: 0.2087 -> 0.0000 (deboost -0.2087, worse) | AB rounded to 6 (raw=5.97), rates preserved: AVG=0.192 HR/AB=0.022 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4950 -> 0.0000 (deboost -0.4950, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2749 -> 0.2860 (boost 0.0111, better) | predicted_SLG: 0.2942 -> 0.1670 (deboost -0.1272, 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: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.2942 (boost 0.1272, better) | predicted_OBP: 0.2860 -> 0.2749 (deboost -0.0111, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "553993",
"player_name": "Eugenio Suárez",
"position": "3B",
"team": "CIN",
"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.71,
"predicted_AVG": 0.213,
"predicted_BB": 0.405,
"predicted_H": 0.79,
"predicted_HR": 0.1,
"predicted_OBP": 0.278,
"predicted_R": 0.389,
"predicted_RBI": 0.42,
"predicted_SLG": 0.327,
"predicted_SO": 1.246
},
"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.2087,
"predicted_3B": 0.0009,
"predicted_AB": 5.9653,
"predicted_AVG": 0.2007,
"predicted_BB": 0.6866,
"predicted_H": 1.161,
"predicted_HBP": 0.004,
"predicted_HR": 0.1356,
"predicted_OBP": 0.2748,
"predicted_R": 0.507,
"predicted_RBI": 0.627,
"predicted_SLG": 0.3048,
"predicted_SO": 2.0847
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.2087,
"delta": 0.0417,
"percent_delta": 0.2497,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.71,
"after": 5.9653,
"delta": 2.2553,
"percent_delta": 0.6079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.213,
"after": 0.2007,
"delta": -0.0123,
"percent_delta": -0.0577,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 0.6866,
"delta": 0.2816,
"percent_delta": 0.6953,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 1.161,
"delta": 0.371,
"percent_delta": 0.4696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1356,
"delta": 0.0356,
"percent_delta": 0.356,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2748,
"delta": -0.0032,
"percent_delta": -0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.389,
"after": 0.507,
"delta": 0.118,
"percent_delta": 0.3033,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.627,
"delta": 0.207,
"percent_delta": 0.4929,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3048,
"delta": -0.0222,
"percent_delta": -0.0679,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.246,
"after": 2.0847,
"delta": 0.8387,
"percent_delta": 0.6731,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 6,
"deboosted_metrics": 2,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.71,
"after": 5.9653,
"delta": 2.2553,
"percent_delta": 0.6079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3048,
"delta": -0.0222,
"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": 9,
"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.2087,
"predicted_3B": 0.0009,
"predicted_AB": 5.9653,
"predicted_AVG": 0.1919,
"predicted_BB": 0.6828,
"predicted_H": 1.1449,
"predicted_HBP": 0.004,
"predicted_HR": 0.1333,
"predicted_OBP": 0.2749,
"predicted_R": 0.495,
"predicted_RBI": 0.6122,
"predicted_SLG": 0.2942,
"predicted_SO": 2.0962
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2087,
"after": 0.2087,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.9653,
"after": 5.9653,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2007,
"after": 0.1919,
"delta": -0.0088,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6866,
"after": 0.6828,
"delta": -0.0038,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.161,
"after": 1.1449,
"delta": -0.0161,
"percent_delta": -0.0139,
"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.1356,
"after": 0.1333,
"delta": -0.0023,
"percent_delta": -0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2748,
"after": 0.2749,
"delta": 0.0001,
"percent_delta": 0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.507,
"after": 0.495,
"delta": -0.012,
"percent_delta": -0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.627,
"after": 0.6122,
"delta": -0.0148,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3048,
"after": 0.2942,
"delta": -0.0106,
"percent_delta": -0.0348,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0847,
"after": 2.0962,
"delta": 0.0115,
"percent_delta": 0.0055,
"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.3048,
"after": 0.2942,
"delta": -0.0106,
"percent_delta": -0.0348,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.97), rates preserved: AVG=0.192 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2087,
"after": 0.0,
"delta": -0.2087,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.9653,
"after": 6.0,
"delta": 0.0347,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6828,
"after": 1.0,
"delta": 0.3172,
"percent_delta": 0.4646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1449,
"after": 1.0,
"delta": -0.1449,
"percent_delta": -0.1266,
"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.1333,
"after": 0.0,
"delta": -0.1333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6122,
"after": 1.0,
"delta": 0.3878,
"percent_delta": 0.6335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0962,
"after": 2.0,
"delta": -0.0962,
"percent_delta": -0.0459,
"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.6122,
"after": 1.0,
"delta": 0.3878,
"percent_delta": 0.6335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2087,
"after": 0.0,
"delta": -0.2087,
"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.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 6.0,
"after": 6.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": 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": {
"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": 6.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": 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": 6.0,
"after": 6.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.495,
"after": 0.0,
"delta": -0.495,
"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": 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_R",
"before": 0.495,
"after": 0.0,
"delta": -0.495,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1919,
"after": 0.167,
"delta": -0.0249,
"percent_delta": -0.1298,
"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.2749,
"after": 0.286,
"delta": 0.0111,
"percent_delta": 0.0404,
"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.2942,
"after": 0.167,
"delta": -0.1272,
"percent_delta": -0.4324,
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2749,
"after": 0.286,
"delta": 0.0111,
"percent_delta": 0.0404,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2942,
"after": 0.167,
"delta": -0.1272,
"percent_delta": -0.4324,
"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": 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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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": 2.0,
"after": 0.0,
"delta": -2.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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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.1919,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2749,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2942,
"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.167,
"after": 0.1919,
"delta": 0.0249,
"percent_delta": 0.1492,
"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.286,
"after": 0.2749,
"delta": -0.0111,
"percent_delta": -0.0387,
"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.167,
"after": 0.2942,
"delta": 0.1272,
"percent_delta": 0.7619,
"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.167,
"after": 0.2942,
"delta": 0.1272,
"percent_delta": 0.7619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2749,
"delta": -0.0111,
"percent_delta": -0.0387,
"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.71,
"after": 4.0,
"delta": 0.29,
"percent_delta": 0.0782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.213,
"after": 0.1919,
"delta": -0.0211,
"percent_delta": -0.0991,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 0.0,
"delta": -0.405,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 1.0,
"delta": 0.21,
"percent_delta": 0.2658,
"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.278,
"after": 0.2749,
"delta": -0.0031,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.389,
"after": 0.0,
"delta": -0.389,
"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.327,
"after": 0.2942,
"delta": -0.0328,
"percent_delta": -0.1003,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.246,
"after": 0.0,
"delta": -1.246,
"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.71,
"after": 4.0,
"delta": 0.29,
"percent_delta": 0.0782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.246,
"after": 0.0,
"delta": -1.246,
"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.710 | - |
| predicted_AVG | 0.213 | - |
| predicted_BB | 0.405 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.278 | - |
| predicted_R | 0.389 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.327 | - |
| predicted_SO | 1.246 | - |
Final model 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.042 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.965 | 2.255 |
| predicted_AVG | 0.201 | -0.012 |
| predicted_BB | 0.687 | 0.282 |
| predicted_H | 1.161 | 0.371 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.136 | 0.036 |
| predicted_OBP | 0.275 | -0.003 |
| predicted_R | 0.507 | 0.118 |
| predicted_RBI | 0.627 | 0.207 |
| predicted_SLG | 0.305 | -0.022 |
| predicted_SO | 2.085 | 0.839 |
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 | 5.965 | 0.000 |
| predicted_AVG | 0.192 | -0.009 |
| predicted_BB | 0.683 | -0.004 |
| predicted_H | 1.145 | -0.016 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.133 | -0.002 |
| predicted_OBP | 0.275 | 0.000 |
| predicted_R | 0.495 | -0.012 |
| predicted_RBI | 0.612 | -0.015 |
| predicted_SLG | 0.294 | -0.011 |
| predicted_SO | 2.096 | 0.011 |
AB rounded to 6 (raw=5.97), rates preserved: AVG=0.192 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 6.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 | 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.209 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 6.000 | 0.035 |
| predicted_AVG | 0.167 | -0.025 |
| predicted_BB | 1.000 | 0.317 |
| predicted_H | 1.000 | -0.145 |
| predicted_HR | 0.000 | -0.133 |
| predicted_OBP | 0.286 | 0.011 |
| predicted_R | 0.000 | -0.495 |
| predicted_RBI | 1.000 | 0.388 |
| predicted_SLG | 0.167 | -0.127 |
| predicted_SO | 2.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 | 4.000 | -2.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 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.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 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 2.000 | 7.000 | 0.1111 | 0.2000 | 0.1111 | 0.1111 | 0.0000 | 0.0556 | 0.1111 | 0.3889 |
| last_10 | 0.20 | 9 | - | 35.000 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 6.000 | 15.000 | 0.0857 | 0.2143 | 0.1714 | 0.0857 | 0.0286 | 0.0857 | 0.1714 | 0.4286 |
| season | 0.60 | 37 | - | 462.000 | 106.000 | 21.000 | 0.000 | 11.000 | 54.000 | 49.000 | 51.000 | 157.000 | 0.2294 | 0.3054 | 0.3463 | 0.2294 | 0.0238 | 0.1169 | 0.1104 | 0.3398 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2630 |
| predicted_3B | 0.0020 |
| predicted_AB | 8.9080 |
| predicted_AVG | 0.1846 |
| predicted_BB | 1.0540 |
| predicted_H | 1.6450 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.1820 |
| predicted_OBP | 0.2707 |
| predicted_R | 0.6610 |
| predicted_RBI | 0.8970 |
| predicted_SLG | 0.2759 |
| predicted_SO | 3.1790 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.2630 | 0.2087 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.7100 | 8.9080 | 5.9653 | model_form_blend |
| predicted_AVG | 0.2130 | 0.1846 | 0.2007 | model_form_blend |
| predicted_BB | 0.4050 | 1.0540 | 0.6866 | model_form_blend |
| predicted_H | 0.7900 | 1.6450 | 1.1610 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.1000 | 0.1820 | 0.1356 | model_form_blend |
| predicted_OBP | 0.2780 | 0.2707 | 0.2748 | model_form_blend |
| predicted_R | 0.3890 | 0.6610 | 0.5070 | model_form_blend |
| predicted_RBI | 0.4200 | 0.8970 | 0.6270 | model_form_blend |
| predicted_SLG | 0.3270 | 0.2759 | 0.3048 | model_form_blend |
| predicted_SO | 1.2460 | 3.1790 | 2.0847 | 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 | 126 |
| Season rows before report date | 126 |
| Report year | 2026 |
| Profile rows used | 126 |
| 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.229 |
| 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 | 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 | 3B |
| gameID | 20260606_CIN@STL |
| game_type | full |
| mlbID | 553993 |
| playerID | 553993 |
| playerName | Eugenio Suárez |
| pos | DH |
| started | True |
| startingPosition | 3B |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-06 |
| sl_k_percent | 31.3 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.281 |
| sl_xwoba | 0.28 |
| sl_xba | 0.206 |
| sl_xslg | 0.341 |
| sl_sweet_spot_percent | 36.4 |
| sl_barrel_batted_rate | 8.3 |
| sl_hard_hit_percent | 25.0 |
| sl_exit_velocity_avg | 86.1 |
| sl_launch_angle_avg | 21.1 |
| sl_whiff_percent | 33.1 |
| 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.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.091 | 3.000 | 5.000 | Hitting_AB | 3.000 | 3.000 | 0.000 | 0.000 |
| predicted_AVG | 0.245 | 0.000 | 0.200 | Hitting_AVG | 0.157 | 0.333 | -0.157 | -0.333 |
| predicted_BB | 0.273 | 0.000 | 0.000 | Hitting_BB | 0.294 | 1.000 | -0.294 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.118 | 0.000 | -0.118 | 0.000 |
| predicted_H | 0.640 | 0.000 | 1.000 | Hitting_H | 0.471 | 1.000 | -0.471 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.282 | 0.250 | 0.200 | Hitting_OBP | 0.232 | 0.500 | 0.018 | -0.250 |
| predicted_R | 0.273 | 0.000 | 0.000 | Hitting_R | 0.265 | 1.000 | -0.265 | -1.000 |
| predicted_RBI | 0.240 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.306 | 0.000 | 0.200 | Hitting_SLG | 0.157 | 0.333 | -0.157 | -0.333 |
| predicted_SO | 0.848 | 1.000 | 1.000 | Hitting_SO | 0.824 | 1.000 | 0.176 | 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 | 0 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.8480 -> 1.0000 (boost 0.1520, 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 | 8 | 5 | 3 | 4 | 4 | predicted_AB: 3.0910 -> 4.5641 (boost 1.4731, better) | predicted_SLG: 0.3060 -> 0.2664 (deboost -0.0396, 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.2664 -> 0.2263 (deboost -0.0401, 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: 4.5641 -> 5.0000 (boost 0.4359, better) | predicted_BB: 0.3756 -> 0.0000 (deboost -0.3756, worse) | AB rounded to 5 (raw=4.56), rates preserved: AVG=0.183 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4085 -> 0.0000 (deboost -0.4085, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.1829 -> 0.2000 (boost 0.0171, better) | predicted_OBP: 0.2451 -> 0.2000 (deboost -0.0451, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 1 | 2 | predicted_HBP: 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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2000 -> 0.2451 (boost 0.0451, better) | predicted_AVG: 0.2000 -> 0.1829 (deboost -0.0171, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682622",
"player_name": "Noelvi Marte",
"position": "RF",
"team": "CIN",
"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.091,
"predicted_AVG": 0.245,
"predicted_BB": 0.273,
"predicted_H": 0.64,
"predicted_HR": 0.06,
"predicted_OBP": 0.282,
"predicted_R": 0.273,
"predicted_RBI": 0.24,
"predicted_SLG": 0.306,
"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.0279,
"predicted_3B": 0.0023,
"predicted_AB": 4.5641,
"predicted_AVG": 0.216,
"predicted_BB": 0.3777,
"predicted_H": 0.8467,
"predicted_HBP": 0.013,
"predicted_HR": 0.0561,
"predicted_OBP": 0.2628,
"predicted_R": 0.4184,
"predicted_RBI": 0.2214,
"predicted_SLG": 0.2664,
"predicted_SO": 1.1846
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0279,
"delta": 0.0279,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0023,
"delta": 0.0023,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.091,
"after": 4.5641,
"delta": 1.4731,
"percent_delta": 0.4766,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.216,
"delta": -0.029,
"percent_delta": -0.1184,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.273,
"after": 0.3777,
"delta": 0.1047,
"percent_delta": 0.3835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.8467,
"delta": 0.2067,
"percent_delta": 0.323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0561,
"delta": -0.0039,
"percent_delta": -0.065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.282,
"after": 0.2628,
"delta": -0.0192,
"percent_delta": -0.0681,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.273,
"after": 0.4184,
"delta": 0.1454,
"percent_delta": 0.5326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.2214,
"delta": -0.0186,
"percent_delta": -0.0775,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.2664,
"delta": -0.0396,
"percent_delta": -0.1294,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.848,
"after": 1.1846,
"delta": 0.3366,
"percent_delta": 0.3969,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.091,
"after": 4.5641,
"delta": 1.4731,
"percent_delta": 0.4766,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.2664,
"delta": -0.0396,
"percent_delta": -0.1294,
"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": 3,
"last_10": 4,
"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.0279,
"predicted_3B": 0.0023,
"predicted_AB": 4.5641,
"predicted_AVG": 0.1829,
"predicted_BB": 0.3756,
"predicted_H": 0.8349,
"predicted_HBP": 0.013,
"predicted_HR": 0.0551,
"predicted_OBP": 0.2451,
"predicted_R": 0.4085,
"predicted_RBI": 0.2162,
"predicted_SLG": 0.2263,
"predicted_SO": 1.1911
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0279,
"after": 0.0279,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0023,
"after": 0.0023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5641,
"after": 4.5641,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.216,
"after": 0.1829,
"delta": -0.0331,
"percent_delta": -0.1532,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3777,
"after": 0.3756,
"delta": -0.0021,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8467,
"after": 0.8349,
"delta": -0.0118,
"percent_delta": -0.0139,
"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.0561,
"after": 0.0551,
"delta": -0.001,
"percent_delta": -0.0178,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2628,
"after": 0.2451,
"delta": -0.0177,
"percent_delta": -0.0674,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4184,
"after": 0.4085,
"delta": -0.0099,
"percent_delta": -0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2214,
"after": 0.2162,
"delta": -0.0052,
"percent_delta": -0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2664,
"after": 0.2263,
"delta": -0.0401,
"percent_delta": -0.1505,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1846,
"after": 1.1911,
"delta": 0.0065,
"percent_delta": 0.0055,
"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.2664,
"after": 0.2263,
"delta": -0.0401,
"percent_delta": -0.1505,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.56), rates preserved: AVG=0.183 HR/AB=0.012",
"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.0279,
"after": 0.0,
"delta": -0.0279,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0023,
"after": 0.0,
"delta": -0.0023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5641,
"after": 5.0,
"delta": 0.4359,
"percent_delta": 0.0955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3756,
"after": 0.0,
"delta": -0.3756,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8349,
"after": 1.0,
"delta": 0.1651,
"percent_delta": 0.1977,
"direction": "boost",
"projection_effect": "better",
"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.0551,
"after": 0.0,
"delta": -0.0551,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2162,
"after": 0.0,
"delta": -0.2162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1911,
"after": 1.0,
"delta": -0.1911,
"percent_delta": -0.1604,
"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": 4.5641,
"after": 5.0,
"delta": 0.4359,
"percent_delta": 0.0955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3756,
"after": 0.0,
"delta": -0.3756,
"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": 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": 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.4085,
"after": 0.0,
"delta": -0.4085,
"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.4085,
"after": 0.0,
"delta": -0.4085,
"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": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 0.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.1829,
"after": 0.2,
"delta": 0.0171,
"percent_delta": 0.0935,
"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.2451,
"after": 0.2,
"delta": -0.0451,
"percent_delta": -0.184,
"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.2263,
"after": 0.2,
"delta": -0.0263,
"percent_delta": -0.1162,
"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.1829,
"after": 0.2,
"delta": 0.0171,
"percent_delta": 0.0935,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2451,
"after": 0.2,
"delta": -0.0451,
"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": 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": 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": 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": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"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_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": 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.1829,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2451,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2263,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1829,
"delta": -0.0171,
"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_CS",
"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.2,
"after": 0.2451,
"delta": 0.0451,
"percent_delta": 0.2253,
"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.2263,
"delta": 0.0263,
"percent_delta": 0.1315,
"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_OBP",
"before": 0.2,
"after": 0.2451,
"delta": 0.0451,
"percent_delta": 0.2253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.1829,
"delta": -0.0171,
"percent_delta": -0.0853,
"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.091,
"after": 3.0,
"delta": -0.091,
"percent_delta": -0.0294,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.1829,
"delta": -0.0621,
"percent_delta": -0.2535,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.273,
"after": 0.0,
"delta": -0.273,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.282,
"after": 0.2451,
"delta": -0.0369,
"percent_delta": -0.1309,
"direction": "deboost",
"projection_effect": "worse",
"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.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.2263,
"delta": -0.0797,
"percent_delta": -0.2605,
"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": 1,
"deboosted_metrics": 9,
"better_metrics": 0,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.848,
"after": 1.0,
"delta": 0.152,
"percent_delta": 0.1792,
"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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.091 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.273 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.282 | - |
| predicted_R | 0.273 | - |
| predicted_RBI | 0.240 | - |
| predicted_SLG | 0.306 | - |
| 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.028 | 0.028 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 4.564 | 1.473 |
| predicted_AVG | 0.216 | -0.029 |
| predicted_BB | 0.378 | 0.105 |
| predicted_H | 0.847 | 0.207 |
| predicted_HBP | 0.013 | - |
| predicted_HR | 0.056 | -0.004 |
| predicted_OBP | 0.263 | -0.019 |
| predicted_R | 0.418 | 0.145 |
| predicted_RBI | 0.221 | -0.019 |
| predicted_SLG | 0.266 | -0.040 |
| predicted_SO | 1.185 | 0.337 |
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.002 | 0.000 |
| predicted_AB | 4.564 | 0.000 |
| predicted_AVG | 0.183 | -0.033 |
| predicted_BB | 0.376 | -0.002 |
| predicted_H | 0.835 | -0.012 |
| predicted_HBP | 0.013 | 0.000 |
| predicted_HR | 0.055 | -0.001 |
| predicted_OBP | 0.245 | -0.018 |
| predicted_R | 0.408 | -0.010 |
| predicted_RBI | 0.216 | -0.005 |
| predicted_SLG | 0.226 | -0.040 |
| predicted_SO | 1.191 | 0.006 |
AB rounded to 5 (raw=4.56), rates preserved: AVG=0.183 HR/AB=0.012
| 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 | - |
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 | 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.002 |
| predicted_AB | 5.000 | 0.436 |
| predicted_AVG | 0.200 | 0.017 |
| predicted_BB | 0.000 | -0.376 |
| predicted_H | 1.000 | 0.165 |
| predicted_HR | 0.000 | -0.055 |
| predicted_OBP | 0.200 | -0.045 |
| predicted_R | 0.000 | -0.408 |
| predicted_RBI | 0.000 | -0.216 |
| predicted_SLG | 0.200 | -0.026 |
| predicted_SO | 1.000 | -0.191 |
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 | 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 | 3 | - | 19.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 4.000 | 0.1053 | 0.1500 | 0.1053 | 0.1053 | 0.0000 | 0.0000 | 0.0526 | 0.2105 |
| last_10 | 0.20 | 4 | - | 39.000 | 6.000 | 0.000 | 0.000 | 0.000 | 0.000 | 5.000 | 1.000 | 5.000 | 0.1538 | 0.1750 | 0.1538 | 0.1538 | 0.0000 | 0.0000 | 0.0256 | 0.1282 |
| season | 0.60 | 13 | - | 102.000 | 16.000 | 0.000 | 0.000 | 0.000 | 0.000 | 9.000 | 9.000 | 28.000 | 0.1569 | 0.2252 | 0.1569 | 0.1569 | 0.0000 | 0.0000 | 0.0882 | 0.2745 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0720 |
| predicted_3B | 0.0060 |
| predicted_AB | 6.8900 |
| predicted_AVG | 0.1702 |
| predicted_BB | 0.5430 |
| predicted_H | 1.1730 |
| predicted_HBP | 0.0130 |
| predicted_HR | 0.0500 |
| predicted_OBP | 0.2325 |
| predicted_R | 0.6480 |
| predicted_RBI | 0.1920 |
| predicted_SLG | 0.2039 |
| predicted_SO | 1.7160 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0720 | 0.0279 | model_form_blend |
| predicted_3B | 0.0000 | 0.0060 | 0.0023 | model_form_blend |
| predicted_AB | 3.0910 | 6.8900 | 4.5641 | model_form_blend |
| predicted_AVG | 0.2450 | 0.1702 | 0.2160 | model_form_blend |
| predicted_BB | 0.2730 | 0.5430 | 0.3777 | model_form_blend |
| predicted_H | 0.6400 | 1.1730 | 0.8467 | model_form_blend |
| predicted_HBP | - | 0.0130 | 0.0130 | form_only |
| predicted_HR | 0.0600 | 0.0500 | 0.0561 | model_form_blend |
| predicted_OBP | 0.2820 | 0.2325 | 0.2628 | model_form_blend |
| predicted_R | 0.2730 | 0.6480 | 0.4184 | model_form_blend |
| predicted_RBI | 0.2400 | 0.1920 | 0.2214 | model_form_blend |
| predicted_SLG | 0.3060 | 0.2039 | 0.2664 | model_form_blend |
| predicted_SO | 0.8480 | 1.7160 | 1.1846 | 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 | 34 |
| Season rows before report date | 34 |
| 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 | 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.157 |
| 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 | 1 |
| 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 | 20260606_CIN@STL |
| game_type | full |
| mlbID | 682622 |
| playerID | 682622 |
| playerName | Noelvi Marte |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-06 |
| sl_k_percent | 27.5 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.205 |
| sl_xwoba | 0.222 |
| sl_xba | 0.179 |
| sl_xslg | 0.207 |
| sl_sweet_spot_percent | 16.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 28.0 |
| sl_exit_velocity_avg | 86.5 |
| sl_launch_angle_avg | 0.5 |
| sl_whiff_percent | 29.8 |
| sl_swing_percent | 53.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.200 | 0.000 | 0.000 | Hitting_2B | 0.196 | 0.000 | -0.196 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.855 | 3.000 | 7.000 | Hitting_AB | 3.786 | 4.000 | -0.786 | -1.000 |
| predicted_AVG | 0.235 | 0.000 | 0.286 | Hitting_AVG | 0.213 | 0.500 | -0.213 | -0.500 |
| predicted_BB | 0.491 | 1.000 | 1.000 | Hitting_BB | 0.487 | 0.000 | 0.513 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 0.800 | 0.000 | 2.000 | Hitting_H | 0.808 | 2.000 | -0.808 | -2.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.112 | 2.000 | -0.112 | -2.000 |
| predicted_OBP | 0.313 | 0.250 | 0.375 | Hitting_OBP | 0.310 | 0.500 | -0.060 | -0.250 |
| predicted_R | 0.468 | 0.000 | 1.000 | Hitting_R | 0.460 | 2.000 | -0.460 | -2.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.424 | 2.000 | -0.424 | -2.000 |
| predicted_SLG | 0.454 | 0.000 | 0.286 | Hitting_SLG | 0.354 | 2.000 | -0.354 | -2.000 |
| predicted_SO | 1.045 | 0.000 | 2.000 | Hitting_SO | 1.027 | 2.000 | -1.027 | -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_BB: 0.4910 -> 1.0000 (boost 0.5090, better) |
| Biggest Deboost | predicted_SO: 1.0450 -> 0.0000 (deboost -1.0450, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.8550 -> 6.8459 (boost 2.9909, 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.2401 -> 0.2310 (deboost -0.0091, 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_H: 1.5816 -> 2.0000 (boost 0.4184, better) | predicted_HR: 0.4478 -> 0.0000 (deboost -0.4478, worse) | AB rounded to 7 (raw=6.85), rates preserved: AVG=0.231 HR/AB=0.065 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1208 -> 1.0000 (deboost -0.1208, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3159 -> 0.3750 (boost 0.0591, better) | predicted_SLG: 0.4797 -> 0.2860 (deboost -0.1937, 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: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4797 (boost 0.1937, better) | predicted_OBP: 0.3750 -> 0.3159 (deboost -0.0591, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "680574",
"player_name": "Matt McLain",
"position": "SS",
"team": "CIN",
"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.0,
"predicted_AB": 3.855,
"predicted_AVG": 0.235,
"predicted_BB": 0.491,
"predicted_H": 0.8,
"predicted_HR": 0.19,
"predicted_OBP": 0.313,
"predicted_R": 0.468,
"predicted_RBI": 0.51,
"predicted_SLG": 0.454,
"predicted_SO": 1.045
},
"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.3584,
"predicted_3B": 0.0004,
"predicted_AB": 6.8459,
"predicted_AVG": 0.2401,
"predicted_BB": 0.8545,
"predicted_H": 1.6039,
"predicted_HBP": 0.082,
"predicted_HR": 0.4556,
"predicted_OBP": 0.3224,
"predicted_R": 1.1479,
"predicted_RBI": 1.0646,
"predicted_SLG": 0.4844,
"predicted_SO": 1.8025
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.3584,
"delta": 0.1584,
"percent_delta": 0.792,
"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": 3.855,
"after": 6.8459,
"delta": 2.9909,
"percent_delta": 0.7758,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2401,
"delta": 0.0051,
"percent_delta": 0.0217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.491,
"after": 0.8545,
"delta": 0.3635,
"percent_delta": 0.7403,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 1.6039,
"delta": 0.8039,
"percent_delta": 1.0049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.4556,
"delta": 0.2656,
"percent_delta": 1.3979,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3224,
"delta": 0.0094,
"percent_delta": 0.03,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.468,
"after": 1.1479,
"delta": 0.6799,
"percent_delta": 1.4528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 1.0646,
"delta": 0.5546,
"percent_delta": 1.0875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4844,
"delta": 0.0304,
"percent_delta": 0.067,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.045,
"after": 1.8025,
"delta": 0.7575,
"percent_delta": 0.7249,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.855,
"after": 6.8459,
"delta": 2.9909,
"percent_delta": 0.7758,
"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": 8,
"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.3584,
"predicted_3B": 0.0004,
"predicted_AB": 6.8459,
"predicted_AVG": 0.231,
"predicted_BB": 0.8498,
"predicted_H": 1.5816,
"predicted_HBP": 0.082,
"predicted_HR": 0.4478,
"predicted_OBP": 0.3159,
"predicted_R": 1.1208,
"predicted_RBI": 1.0395,
"predicted_SLG": 0.4797,
"predicted_SO": 1.8124
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3584,
"after": 0.3584,
"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": 6.8459,
"after": 6.8459,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2401,
"after": 0.231,
"delta": -0.0091,
"percent_delta": -0.0379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8545,
"after": 0.8498,
"delta": -0.0047,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6039,
"after": 1.5816,
"delta": -0.0223,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.082,
"after": 0.082,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4556,
"after": 0.4478,
"delta": -0.0078,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3224,
"after": 0.3159,
"delta": -0.0065,
"percent_delta": -0.0202,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1479,
"after": 1.1208,
"delta": -0.0271,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0646,
"after": 1.0395,
"delta": -0.0251,
"percent_delta": -0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4844,
"after": 0.4797,
"delta": -0.0047,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.8025,
"after": 1.8124,
"delta": 0.0099,
"percent_delta": 0.0055,
"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.2401,
"after": 0.231,
"delta": -0.0091,
"percent_delta": -0.0379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.85), rates preserved: AVG=0.231 HR/AB=0.065",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3584,
"after": 0.0,
"delta": -0.3584,
"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": 6.8459,
"after": 7.0,
"delta": 0.1541,
"percent_delta": 0.0225,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8498,
"after": 1.0,
"delta": 0.1502,
"percent_delta": 0.1767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5816,
"after": 2.0,
"delta": 0.4184,
"percent_delta": 0.2645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.082,
"after": 0.0,
"delta": -0.082,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4478,
"after": 0.0,
"delta": -0.4478,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0395,
"after": 1.0,
"delta": -0.0395,
"percent_delta": -0.038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.8124,
"after": 2.0,
"delta": 0.1876,
"percent_delta": 0.1035,
"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_H",
"before": 1.5816,
"after": 2.0,
"delta": 0.4184,
"percent_delta": 0.2645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4478,
"after": 0.0,
"delta": -0.4478,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.1208,
"after": 1.0,
"delta": -0.1208,
"percent_delta": -0.1078,
"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": 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_R",
"before": 1.1208,
"after": 1.0,
"delta": -0.1208,
"percent_delta": -0.1078,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.286,
"delta": 0.055,
"percent_delta": 0.2381,
"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": 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_OBP",
"before": 0.3159,
"after": 0.375,
"delta": 0.0591,
"percent_delta": 0.1871,
"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.4797,
"after": 0.286,
"delta": -0.1937,
"percent_delta": -0.4038,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3159,
"after": 0.375,
"delta": 0.0591,
"percent_delta": 0.1871,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4797,
"after": 0.286,
"delta": -0.1937,
"percent_delta": -0.4038,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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.231,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3159,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4797,
"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": 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.231,
"delta": -0.055,
"percent_delta": -0.1922,
"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.375,
"after": 0.3159,
"delta": -0.0591,
"percent_delta": -0.1575,
"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.286,
"after": 0.4797,
"delta": 0.1937,
"percent_delta": 0.6774,
"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.286,
"after": 0.4797,
"delta": 0.1937,
"percent_delta": 0.6774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3159,
"delta": -0.0591,
"percent_delta": -0.1575,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.855,
"after": 3.0,
"delta": -0.855,
"percent_delta": -0.2218,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.231,
"delta": -0.004,
"percent_delta": -0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.491,
"after": 1.0,
"delta": 0.509,
"percent_delta": 1.0367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3159,
"delta": 0.0029,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.468,
"after": 0.0,
"delta": -0.468,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4797,
"delta": 0.0257,
"percent_delta": 0.0566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.045,
"after": 0.0,
"delta": -1.045,
"percent_delta": -1.0,
"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_BB",
"before": 0.491,
"after": 1.0,
"delta": 0.509,
"percent_delta": 1.0367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.045,
"after": 0.0,
"delta": -1.045,
"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.000 | - |
| predicted_AB | 3.855 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.491 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.313 | - |
| predicted_R | 0.468 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.454 | - |
| predicted_SO | 1.045 | - |
Final model 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.358 | 0.158 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.846 | 2.991 |
| predicted_AVG | 0.240 | 0.005 |
| predicted_BB | 0.855 | 0.364 |
| predicted_H | 1.604 | 0.804 |
| predicted_HBP | 0.082 | - |
| predicted_HR | 0.456 | 0.266 |
| predicted_OBP | 0.322 | 0.009 |
| predicted_R | 1.148 | 0.680 |
| predicted_RBI | 1.065 | 0.555 |
| predicted_SLG | 0.484 | 0.030 |
| predicted_SO | 1.802 | 0.758 |
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.358 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.846 | 0.000 |
| predicted_AVG | 0.231 | -0.009 |
| predicted_BB | 0.850 | -0.005 |
| predicted_H | 1.582 | -0.022 |
| predicted_HBP | 0.082 | 0.000 |
| predicted_HR | 0.448 | -0.008 |
| predicted_OBP | 0.316 | -0.007 |
| predicted_R | 1.121 | -0.027 |
| predicted_RBI | 1.040 | -0.025 |
| predicted_SLG | 0.480 | -0.005 |
| predicted_SO | 1.812 | 0.010 |
AB rounded to 7 (raw=6.85), rates preserved: AVG=0.231 HR/AB=0.065
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.358 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.154 |
| predicted_AVG | 0.286 | 0.055 |
| predicted_BB | 1.000 | 0.150 |
| predicted_H | 2.000 | 0.418 |
| predicted_HR | 0.000 | -0.448 |
| predicted_OBP | 0.375 | 0.059 |
| predicted_R | 1.000 | -0.121 |
| predicted_RBI | 1.000 | -0.040 |
| predicted_SLG | 0.286 | -0.194 |
| predicted_SO | 2.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 | -4.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -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 | - | 15.000 | 5.000 | 1.000 | 0.000 | 3.000 | 5.000 | 5.000 | 2.000 | 4.000 | 0.3333 | 0.4118 | 1.0000 | 0.3333 | 0.2000 | 0.3333 | 0.1333 | 0.2667 |
| last_10 | 0.20 | 8 | - | 30.000 | 8.000 | 1.000 | 0.000 | 3.000 | 5.000 | 9.000 | 3.000 | 6.000 | 0.2667 | 0.3333 | 0.6000 | 0.2667 | 0.1000 | 0.1667 | 0.1000 | 0.2000 |
| season | 0.60 | 57 | - | 848.000 | 181.000 | 44.000 | 0.000 | 25.000 | 95.000 | 103.000 | 108.000 | 230.000 | 0.2134 | 0.3095 | 0.3538 | 0.2134 | 0.0295 | 0.1120 | 0.1274 | 0.2712 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5590 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.6340 |
| predicted_AVG | 0.2465 |
| predicted_BB | 1.3150 |
| predicted_H | 2.6220 |
| predicted_HBP | 0.0820 |
| predicted_HR | 0.7920 |
| predicted_OBP | 0.3342 |
| predicted_R | 2.0090 |
| predicted_RBI | 1.7670 |
| predicted_SLG | 0.5228 |
| predicted_SO | 2.7620 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2000 | 0.5590 | 0.3584 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8550 | 10.6340 | 6.8459 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2465 | 0.2401 | model_form_blend |
| predicted_BB | 0.4910 | 1.3150 | 0.8545 | model_form_blend |
| predicted_H | 0.8000 | 2.6220 | 1.6039 | model_form_blend |
| predicted_HBP | - | 0.0820 | 0.0820 | form_only |
| predicted_HR | 0.1900 | 0.7920 | 0.4556 | model_form_blend |
| predicted_OBP | 0.3130 | 0.3342 | 0.3224 | model_form_blend |
| predicted_R | 0.4680 | 2.0090 | 1.1479 | model_form_blend |
| predicted_RBI | 0.5100 | 1.7670 | 1.0646 | model_form_blend |
| predicted_SLG | 0.4540 | 0.5228 | 0.4844 | model_form_blend |
| predicted_SO | 1.0450 | 2.7620 | 1.8025 | 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 | 220 |
| 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.213 |
| 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 | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 8 |
| 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 | 20260607_CIN@STL |
| game_type | full |
| mlbID | 680574 |
| playerID | 680574 |
| playerName | Matt McLain |
| pos | 2B |
| started | True |
| startingPosition | SS |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.8 |
| sl_bb_percent | 11.3 |
| sl_woba | 0.303 |
| sl_xwoba | 0.317 |
| sl_xba | 0.227 |
| sl_xslg | 0.39 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 8.6 |
| sl_hard_hit_percent | 37.3 |
| sl_exit_velocity_avg | 88.1 |
| sl_launch_angle_avg | 20.1 |
| sl_whiff_percent | 25.3 |
| 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_2B | 0.139 | 0.000 | 0.000 | Hitting_2B | 0.139 | 1.000 | -0.139 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.303 | 4.000 | 5.000 | Hitting_AB | 3.283 | 4.000 | 0.717 | 0.000 |
| predicted_AVG | 0.241 | 0.000 | 0.200 | Hitting_AVG | 0.196 | 0.750 | -0.196 | -0.750 |
| predicted_BB | 0.521 | 0.000 | 1.000 | Hitting_BB | 0.518 | 0.000 | -0.518 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.024 | 0.000 | -0.024 | 0.000 |
| predicted_H | 0.690 | 0.000 | 1.000 | Hitting_H | 0.645 | 3.000 | -0.645 | -3.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.108 | 1.000 | -0.108 | -1.000 |
| predicted_OBP | 0.305 | 0.000 | 0.333 | Hitting_OBP | 0.302 | 0.750 | -0.302 | -0.750 |
| predicted_R | 0.248 | 0.000 | 0.000 | Hitting_R | 0.247 | 1.000 | -0.247 | -1.000 |
| predicted_RBI | 0.360 | 0.000 | 1.000 | Hitting_RBI | 0.452 | 1.000 | -0.452 | -1.000 |
| predicted_SLG | 0.400 | 0.000 | 0.200 | Hitting_SLG | 0.338 | 1.750 | -0.338 | -1.750 |
| predicted_SO | 1.067 | 1.000 | 1.000 | Hitting_SO | 1.060 | 0.000 | -0.060 | 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_AB: 3.3030 -> 4.0000 (boost 0.6970, better) |
| Biggest Deboost | predicted_H: 0.6900 -> 0.0000 (deboost -0.6900, 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 | 10 | 8 | 2 | 7 | 3 | predicted_AB: 3.3030 -> 5.4351 (boost 2.1321, better) | predicted_AVG: 0.2410 -> 0.2302 (deboost -0.0108, 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.3942 -> 0.3727 (deboost -0.0215, 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.5733 -> 1.0000 (boost 0.4267, better) | predicted_SO: 1.5930 -> 1.0000 (deboost -0.5930, better) | AB rounded to 5 (raw=5.44), rates preserved: AVG=0.211 HR/AB=0.037 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4154 -> 0.0000 (deboost -0.4154, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3065 -> 0.3330 (boost 0.0265, better) | predicted_SLG: 0.3727 -> 0.2000 (deboost -0.1727, 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_AB: 5.0000 -> 4.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.2000 -> 0.3727 (boost 0.1727, better) | predicted_OBP: 0.3330 -> 0.3065 (deboost -0.0265, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663886",
"player_name": "Tyler Stephenson",
"position": "C",
"team": "CIN",
"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.139,
"predicted_3B": 0.0,
"predicted_AB": 3.303,
"predicted_AVG": 0.241,
"predicted_BB": 0.521,
"predicted_H": 0.69,
"predicted_HR": 0.12,
"predicted_OBP": 0.305,
"predicted_R": 0.248,
"predicted_RBI": 0.36,
"predicted_SLG": 0.4,
"predicted_SO": 1.067
},
"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.2779,
"predicted_3B": 0.0004,
"predicted_AB": 5.4351,
"predicted_AVG": 0.2302,
"predicted_BB": 0.7547,
"predicted_H": 1.1618,
"predicted_HBP": 0.003,
"predicted_HR": 0.2039,
"predicted_OBP": 0.3044,
"predicted_R": 0.4254,
"predicted_RBI": 0.5872,
"predicted_SLG": 0.3942,
"predicted_SO": 1.5843
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.139,
"after": 0.2779,
"delta": 0.1389,
"percent_delta": 0.9993,
"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": 3.303,
"after": 5.4351,
"delta": 2.1321,
"percent_delta": 0.6455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2302,
"delta": -0.0108,
"percent_delta": -0.0448,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.521,
"after": 0.7547,
"delta": 0.2337,
"percent_delta": 0.4486,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.1618,
"delta": 0.4718,
"percent_delta": 0.6838,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.2039,
"delta": 0.0839,
"percent_delta": 0.6992,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.3044,
"delta": -0.0006,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.248,
"after": 0.4254,
"delta": 0.1774,
"percent_delta": 0.7153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 0.5872,
"delta": 0.2272,
"percent_delta": 0.6311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4,
"after": 0.3942,
"delta": -0.0058,
"percent_delta": -0.0145,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.067,
"after": 1.5843,
"delta": 0.5173,
"percent_delta": 0.4848,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.303,
"after": 5.4351,
"delta": 2.1321,
"percent_delta": 0.6455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2302,
"delta": -0.0108,
"percent_delta": -0.0448,
"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": 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.2779,
"predicted_3B": 0.0004,
"predicted_AB": 5.4351,
"predicted_AVG": 0.2108,
"predicted_BB": 0.7505,
"predicted_H": 1.1457,
"predicted_HBP": 0.003,
"predicted_HR": 0.2004,
"predicted_OBP": 0.3065,
"predicted_R": 0.4154,
"predicted_RBI": 0.5733,
"predicted_SLG": 0.3727,
"predicted_SO": 1.593
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2779,
"after": 0.2779,
"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": 5.4351,
"after": 5.4351,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2302,
"after": 0.2108,
"delta": -0.0194,
"percent_delta": -0.0843,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7547,
"after": 0.7505,
"delta": -0.0042,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1618,
"after": 1.1457,
"delta": -0.0161,
"percent_delta": -0.0139,
"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.2039,
"after": 0.2004,
"delta": -0.0035,
"percent_delta": -0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3044,
"after": 0.3065,
"delta": 0.0021,
"percent_delta": 0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4254,
"after": 0.4154,
"delta": -0.01,
"percent_delta": -0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5872,
"after": 0.5733,
"delta": -0.0139,
"percent_delta": -0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3942,
"after": 0.3727,
"delta": -0.0215,
"percent_delta": -0.0545,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5843,
"after": 1.593,
"delta": 0.0087,
"percent_delta": 0.0055,
"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.3942,
"after": 0.3727,
"delta": -0.0215,
"percent_delta": -0.0545,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.44), rates preserved: AVG=0.211 HR/AB=0.037",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.2779,
"after": 0.0,
"delta": -0.2779,
"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": 5.4351,
"after": 5.0,
"delta": -0.4351,
"percent_delta": -0.0801,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7505,
"after": 1.0,
"delta": 0.2495,
"percent_delta": 0.3324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1457,
"after": 1.0,
"delta": -0.1457,
"percent_delta": -0.1272,
"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.2004,
"after": 0.0,
"delta": -0.2004,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5733,
"after": 1.0,
"delta": 0.4267,
"percent_delta": 0.7443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.593,
"after": 1.0,
"delta": -0.593,
"percent_delta": -0.3723,
"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.5733,
"after": 1.0,
"delta": 0.4267,
"percent_delta": 0.7443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.593,
"after": 1.0,
"delta": -0.593,
"percent_delta": -0.3723,
"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": 5.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": 5.0,
"after": 5.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.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": 5.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": 5.0,
"after": 5.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.4154,
"after": 0.0,
"delta": -0.4154,
"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.4154,
"after": 0.0,
"delta": -0.4154,
"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": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.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.2108,
"after": 0.2,
"delta": -0.0108,
"percent_delta": -0.0512,
"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.3065,
"after": 0.333,
"delta": 0.0265,
"percent_delta": 0.0865,
"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.3727,
"after": 0.2,
"delta": -0.1727,
"percent_delta": -0.4634,
"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.3065,
"after": 0.333,
"delta": 0.0265,
"percent_delta": 0.0865,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3727,
"after": 0.2,
"delta": -0.1727,
"percent_delta": -0.4634,
"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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"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": 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": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"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": 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.2108,
"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.3065,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3727,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2108,
"delta": 0.0108,
"percent_delta": 0.0539,
"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.333,
"after": 0.3065,
"delta": -0.0265,
"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.2,
"after": 0.3727,
"delta": 0.1727,
"percent_delta": 0.8634,
"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.2,
"after": 0.3727,
"delta": 0.1727,
"percent_delta": 0.8634,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3065,
"delta": -0.0265,
"percent_delta": -0.0794,
"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.139,
"after": 0.0,
"delta": -0.139,
"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.303,
"after": 4.0,
"delta": 0.697,
"percent_delta": 0.211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2108,
"delta": -0.0302,
"percent_delta": -0.1253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.521,
"after": 0.0,
"delta": -0.521,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"percent_delta": -1.0,
"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.305,
"after": 0.3065,
"delta": 0.0015,
"percent_delta": 0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.248,
"after": 0.0,
"delta": -0.248,
"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.4,
"after": 0.3727,
"delta": -0.0273,
"percent_delta": -0.0683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.067,
"after": 1.0,
"delta": -0.067,
"percent_delta": -0.0628,
"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.303,
"after": 4.0,
"delta": 0.697,
"percent_delta": 0.211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"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.139 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.303 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.521 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.305 | - |
| predicted_R | 0.248 | - |
| predicted_RBI | 0.360 | - |
| predicted_SLG | 0.400 | - |
| predicted_SO | 1.067 | - |
Final model 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.139 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.435 | 2.132 |
| predicted_AVG | 0.230 | -0.011 |
| predicted_BB | 0.755 | 0.234 |
| predicted_H | 1.162 | 0.472 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.204 | 0.084 |
| predicted_OBP | 0.304 | -0.001 |
| predicted_R | 0.425 | 0.177 |
| predicted_RBI | 0.587 | 0.227 |
| predicted_SLG | 0.394 | -0.006 |
| predicted_SO | 1.584 | 0.517 |
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.000 | 0.000 |
| predicted_AB | 5.435 | 0.000 |
| predicted_AVG | 0.211 | -0.019 |
| predicted_BB | 0.750 | -0.004 |
| predicted_H | 1.146 | -0.016 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.200 | -0.004 |
| predicted_OBP | 0.306 | 0.002 |
| predicted_R | 0.415 | -0.010 |
| predicted_RBI | 0.573 | -0.014 |
| predicted_SLG | 0.373 | -0.022 |
| predicted_SO | 1.593 | 0.009 |
AB rounded to 5 (raw=5.44), rates preserved: AVG=0.211 HR/AB=0.037
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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=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 | 5.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 | 5.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.278 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.435 |
| predicted_AVG | 0.200 | -0.011 |
| predicted_BB | 1.000 | 0.250 |
| predicted_H | 1.000 | -0.146 |
| predicted_HR | 0.000 | -0.200 |
| predicted_OBP | 0.333 | 0.027 |
| predicted_R | 0.000 | -0.415 |
| predicted_RBI | 1.000 | 0.427 |
| predicted_SLG | 0.200 | -0.173 |
| predicted_SO | 1.000 | -0.593 |
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 | 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 | 4.000 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 | 1.000 | 4.000 | 0.2353 | 0.2778 | 0.4706 | 0.2353 | 0.0588 | 0.0588 | 0.0588 | 0.2353 |
| last_10 | 0.20 | 8 | - | 33.000 | 9.000 | 4.000 | 0.000 | 1.000 | 1.000 | 4.000 | 4.000 | 4.000 | 0.2727 | 0.3514 | 0.4848 | 0.2727 | 0.0303 | 0.0303 | 0.1212 | 0.1212 |
| season | 0.60 | 50 | - | 545.000 | 107.000 | 23.000 | 0.000 | 18.000 | 75.000 | 41.000 | 86.000 | 176.000 | 0.1963 | 0.3020 | 0.3376 | 0.1963 | 0.0330 | 0.1376 | 0.1578 | 0.3229 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4570 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.1830 |
| predicted_AVG | 0.2163 |
| predicted_BB | 1.0560 |
| predicted_H | 1.7700 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3120 |
| predicted_OBP | 0.3036 |
| predicted_R | 0.6540 |
| predicted_RBI | 0.8800 |
| predicted_SLG | 0.3867 |
| predicted_SO | 2.2510 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1390 | 0.4570 | 0.2779 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.3030 | 8.1830 | 5.4351 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2163 | 0.2302 | model_form_blend |
| predicted_BB | 0.5210 | 1.0560 | 0.7547 | model_form_blend |
| predicted_H | 0.6900 | 1.7700 | 1.1618 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1200 | 0.3120 | 0.2039 | model_form_blend |
| predicted_OBP | 0.3050 | 0.3036 | 0.3044 | model_form_blend |
| predicted_R | 0.2480 | 0.6540 | 0.4254 | model_form_blend |
| predicted_RBI | 0.3600 | 0.8800 | 0.5872 | model_form_blend |
| predicted_SLG | 0.4000 | 0.3867 | 0.3942 | model_form_blend |
| predicted_SO | 1.0670 | 2.2510 | 1.5843 | 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 | 166 |
| Season rows before report date | 166 |
| Report year | 2026 |
| Profile rows used | 165 |
| 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.196 |
| 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 | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 7 |
| 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 | 20260607_CIN@STL |
| game_type | full |
| mlbID | 663886 |
| playerID | 663886 |
| playerName | Tyler Stephenson |
| pos | C |
| started | True |
| startingPosition | C |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 12.1 |
| sl_woba | 0.289 |
| sl_xwoba | 0.328 |
| sl_xba | 0.227 |
| sl_xslg | 0.425 |
| sl_sweet_spot_percent | 40.7 |
| sl_barrel_batted_rate | 11.8 |
| sl_hard_hit_percent | 42.5 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 22.3 |
| sl_whiff_percent | 25.6 |
| 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.000 | 1.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.800 | 4.000 | 3.000 | Hitting_AB | 2.333 | 4.000 | 1.667 | 0.000 |
| predicted_AVG | 0.269 | 0.500 | 0.333 | Hitting_AVG | 0.214 | 0.250 | 0.286 | 0.250 |
| predicted_BB | 0.400 | 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.560 | 2.000 | 1.000 | Hitting_H | 0.500 | 1.000 | 1.500 | 1.000 |
| predicted_HR | 0.060 | 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.312 | 0.250 | 0.188 | 0.250 |
| predicted_R | 0.200 | 1.000 | 0.000 | Hitting_R | 0.167 | 0.000 | 0.833 | 1.000 |
| predicted_RBI | 0.260 | 1.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.349 | 0.750 | 0.333 | Hitting_SLG | 0.214 | 0.250 | 0.536 | 0.500 |
| predicted_SO | 1.200 | 0.000 | 1.000 | Hitting_SO | 1.000 | 0.000 | -1.000 | 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_H: 0.5600 -> 2.0000 (boost 1.4400, better) |
| Biggest Deboost | predicted_SO: 1.2000 -> 0.0000 (deboost -1.2000, 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_AB: 2.8000 -> 2.9804 (boost 0.1804, better) | predicted_AVG: 0.2690 -> 0.2609 (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 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3469 -> 0.2835 (deboost -0.0634, 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.6215 -> 1.0000 (boost 0.3785, better) | predicted_BB: 0.3847 -> 0.0000 (deboost -0.3847, worse) | AB rounded to 3 (raw=2.98), rates preserved: AVG=0.209 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2409 -> 0.0000 (deboost -0.2409, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2085 -> 0.3330 (boost 0.1245, 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 | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2085 (deboost -0.1245, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695490",
"player_name": "Edwin Arroyo",
"position": "2B",
"team": "CIN",
"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.8,
"predicted_AVG": 0.269,
"predicted_BB": 0.4,
"predicted_H": 0.56,
"predicted_HR": 0.06,
"predicted_OBP": 0.309,
"predicted_R": 0.2,
"predicted_RBI": 0.26,
"predicted_SLG": 0.349,
"predicted_SO": 1.2
},
"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.029,
"predicted_3B": 0.0023,
"predicted_AB": 2.9804,
"predicted_AVG": 0.2609,
"predicted_BB": 0.3868,
"predicted_H": 0.6303,
"predicted_HBP": 0.021,
"predicted_HR": 0.0644,
"predicted_OBP": 0.3101,
"predicted_R": 0.2467,
"predicted_RBI": 0.2701,
"predicted_SLG": 0.3469,
"predicted_SO": 1.1544
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.029,
"delta": 0.029,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0023,
"delta": 0.0023,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8,
"after": 2.9804,
"delta": 0.1804,
"percent_delta": 0.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.2609,
"delta": -0.0081,
"percent_delta": -0.0301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4,
"after": 0.3868,
"delta": -0.0132,
"percent_delta": -0.033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.56,
"after": 0.6303,
"delta": 0.0703,
"percent_delta": 0.1255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0644,
"delta": 0.0044,
"percent_delta": 0.0733,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3101,
"delta": 0.0011,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2,
"after": 0.2467,
"delta": 0.0467,
"percent_delta": 0.2335,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.2701,
"delta": 0.0101,
"percent_delta": 0.0388,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.349,
"after": 0.3469,
"delta": -0.0021,
"percent_delta": -0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.2,
"after": 1.1544,
"delta": -0.0456,
"percent_delta": -0.038,
"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.8,
"after": 2.9804,
"delta": 0.1804,
"percent_delta": 0.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.2609,
"delta": -0.0081,
"percent_delta": -0.0301,
"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": 5,
"season": 5
}
},
{
"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.029,
"predicted_3B": 0.0023,
"predicted_AB": 2.9804,
"predicted_AVG": 0.2085,
"predicted_BB": 0.3847,
"predicted_H": 0.6215,
"predicted_HBP": 0.021,
"predicted_HR": 0.0633,
"predicted_OBP": 0.299,
"predicted_R": 0.2409,
"predicted_RBI": 0.2637,
"predicted_SLG": 0.2835,
"predicted_SO": 1.1607
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.029,
"after": 0.029,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0023,
"after": 0.0023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9804,
"after": 2.9804,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2609,
"after": 0.2085,
"delta": -0.0524,
"percent_delta": -0.2008,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3868,
"after": 0.3847,
"delta": -0.0021,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6303,
"after": 0.6215,
"delta": -0.0088,
"percent_delta": -0.014,
"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.0644,
"after": 0.0633,
"delta": -0.0011,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3101,
"after": 0.299,
"delta": -0.0111,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2467,
"after": 0.2409,
"delta": -0.0058,
"percent_delta": -0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2701,
"after": 0.2637,
"delta": -0.0064,
"percent_delta": -0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3469,
"after": 0.2835,
"delta": -0.0634,
"percent_delta": -0.1828,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1544,
"after": 1.1607,
"delta": 0.0063,
"percent_delta": 0.0055,
"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.3469,
"after": 0.2835,
"delta": -0.0634,
"percent_delta": -0.1828,
"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.209 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.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0023,
"after": 0.0,
"delta": -0.0023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9804,
"after": 3.0,
"delta": 0.0196,
"percent_delta": 0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3847,
"after": 0.0,
"delta": -0.3847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6215,
"after": 1.0,
"delta": 0.3785,
"percent_delta": 0.609,
"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.0633,
"after": 0.0,
"delta": -0.0633,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2637,
"after": 0.0,
"delta": -0.2637,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1607,
"after": 1.0,
"delta": -0.1607,
"percent_delta": -0.1385,
"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.6215,
"after": 1.0,
"delta": 0.3785,
"percent_delta": 0.609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3847,
"after": 0.0,
"delta": -0.3847,
"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.2409,
"after": 0.0,
"delta": -0.2409,
"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.2409,
"after": 0.0,
"delta": -0.2409,
"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.2085,
"after": 0.333,
"delta": 0.1245,
"percent_delta": 0.5971,
"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.2835,
"after": 0.333,
"delta": 0.0495,
"percent_delta": 0.1746,
"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.2085,
"after": 0.333,
"delta": 0.1245,
"percent_delta": 0.5971,
"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.2085,
"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.2835,
"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.2085,
"delta": -0.1245,
"percent_delta": -0.3737,
"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.1021,
"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.2835,
"delta": -0.0495,
"percent_delta": -0.1486,
"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.2085,
"delta": -0.1245,
"percent_delta": -0.3737,
"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": 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": 2.8,
"after": 4.0,
"delta": 1.2,
"percent_delta": 0.4286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.2085,
"delta": -0.0605,
"percent_delta": -0.2249,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.56,
"after": 2.0,
"delta": 1.44,
"percent_delta": 2.5714,
"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.309,
"after": 0.299,
"delta": -0.01,
"percent_delta": -0.0324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2,
"after": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"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.349,
"after": 0.2835,
"delta": -0.0655,
"percent_delta": -0.1877,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2,
"after": 0.0,
"delta": -1.2,
"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_H",
"before": 0.56,
"after": 2.0,
"delta": 1.44,
"percent_delta": 2.5714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.2,
"after": 0.0,
"delta": -1.2,
"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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.800 | - |
| predicted_AVG | 0.269 | - |
| predicted_BB | 0.400 | - |
| predicted_H | 0.560 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.200 | - |
| predicted_RBI | 0.260 | - |
| predicted_SLG | 0.349 | - |
| predicted_SO | 1.200 | - |
Final model 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.029 | 0.029 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 2.980 | 0.180 |
| predicted_AVG | 0.261 | -0.008 |
| predicted_BB | 0.387 | -0.013 |
| predicted_H | 0.630 | 0.070 |
| predicted_HBP | 0.021 | - |
| predicted_HR | 0.064 | 0.004 |
| predicted_OBP | 0.310 | 0.001 |
| predicted_R | 0.247 | 0.047 |
| predicted_RBI | 0.270 | 0.010 |
| predicted_SLG | 0.347 | -0.002 |
| predicted_SO | 1.154 | -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.029 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 2.980 | 0.000 |
| predicted_AVG | 0.208 | -0.052 |
| predicted_BB | 0.385 | -0.002 |
| predicted_H | 0.622 | -0.009 |
| predicted_HBP | 0.021 | 0.000 |
| predicted_HR | 0.063 | -0.001 |
| predicted_OBP | 0.299 | -0.011 |
| predicted_R | 0.241 | -0.006 |
| predicted_RBI | 0.264 | -0.006 |
| predicted_SLG | 0.283 | -0.063 |
| predicted_SO | 1.161 | 0.006 |
AB rounded to 3 (raw=2.98), rates preserved: AVG=0.209 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.029 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | 0.020 |
| predicted_AVG | 0.333 | 0.125 |
| predicted_BB | 0.000 | -0.385 |
| predicted_H | 1.000 | 0.378 |
| predicted_HR | 0.000 | -0.063 |
| predicted_OBP | 0.333 | 0.034 |
| predicted_R | 0.000 | -0.241 |
| predicted_RBI | 0.000 | -0.264 |
| predicted_SLG | 0.333 | 0.050 |
| predicted_SO | 1.000 | -0.161 |
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 | - | 14.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 6.000 | 0.2143 | 0.3125 | 0.2143 | 0.2143 | 0.0000 | 0.0000 | 0.1429 | 0.4286 |
| last_10 | 0.20 | 5 | - | 14.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 6.000 | 0.2143 | 0.3125 | 0.2143 | 0.2143 | 0.0000 | 0.0000 | 0.1429 | 0.4286 |
| season | 0.60 | 5 | - | 14.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 6.000 | 0.2143 | 0.3125 | 0.2143 | 0.2143 | 0.0000 | 0.0000 | 0.1429 | 0.4286 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1120 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.4960 |
| predicted_AVG | 0.2377 |
| predicted_BB | 0.3490 |
| predicted_H | 0.8310 |
| predicted_HBP | 0.0210 |
| predicted_HR | 0.0770 |
| predicted_OBP | 0.3131 |
| predicted_R | 0.3800 |
| predicted_RBI | 0.2990 |
| predicted_SLG | 0.3409 |
| predicted_SO | 1.0240 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1120 | 0.0290 | model_form_blend |
| predicted_3B | 0.0000 | 0.0090 | 0.0023 | model_form_blend |
| predicted_AB | 2.8000 | 3.4960 | 2.9804 | model_form_blend |
| predicted_AVG | 0.2690 | 0.2377 | 0.2609 | model_form_blend |
| predicted_BB | 0.4000 | 0.3490 | 0.3868 | model_form_blend |
| predicted_H | 0.5600 | 0.8310 | 0.6303 | model_form_blend |
| predicted_HBP | - | 0.0210 | 0.0210 | form_only |
| predicted_HR | 0.0600 | 0.0770 | 0.0644 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3131 | 0.3101 | model_form_blend |
| predicted_R | 0.2000 | 0.3800 | 0.2467 | model_form_blend |
| predicted_RBI | 0.2600 | 0.2990 | 0.2701 | model_form_blend |
| predicted_SLG | 0.3490 | 0.3409 | 0.3469 | model_form_blend |
| predicted_SO | 1.2000 | 1.0240 | 1.1544 | 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 | 5 |
| 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.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 | 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 | 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 | 20260607_CIN@STL |
| game_type | full |
| mlbID | 695490 |
| playerID | 695490 |
| playerName | Edwin Arroyo |
| pos | SS |
| started | True |
| startingPosition | 2B |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 37.5 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.256 |
| sl_xwoba | 0.265 |
| sl_xba | 0.213 |
| sl_xslg | 0.254 |
| sl_sweet_spot_percent | 50.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 25.0 |
| sl_exit_velocity_avg | 90.9 |
| sl_launch_angle_avg | 2.8 |
| sl_whiff_percent | 27.9 |
| sl_swing_percent | 58.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 | 2.000 | 2.000 | 2.000 | Pitching_BB | 2.385 | 4.000 | -0.385 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 2.385 | 3.000 | -2.385 | -3.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 5.231 | 5.000 | -0.231 | 0.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 5.138 | 6.000 | -0.138 | -1.000 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 3.615 | 5.000 | 0.385 | -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.6667 -> 5.0000 (deboost -0.6667, 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.6667 -> 5.0000 (deboost -0.6667, 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": "671096",
"player_name": "Andrew Abbott",
"position": "Starter",
"team": "CIN",
"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": 5.0,
"predicted_HR": 0.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": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 5.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"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": 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.0,
"delta": -0.6667,
"percent_delta": -0.1176,
"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.0,
"delta": -0.6667,
"percent_delta": -0.1176,
"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": 0.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_R": 0.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"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": 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": 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": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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.0,
"delta": -0.6667,
"percent_delta": -0.1177,
"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.0,
"delta": -0.6667,
"percent_delta": -0.1177,
"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 | 0.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.667 | - |
| 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 | 2.000 | 0.000 |
| predicted_ER | 0.000 | 0.000 |
| predicted_H | 5.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.000 | -0.667 |
| 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 | 28.100 | 8.000 | 21.000 | 12.000 | 19.000 | 4.000 | 2.5412 | 1.1647 | 0.2823 | 0.7412 | 0.4235 | 0.6706 | 0.1412 |
| last_10 | 0.35 | 10 | 51.200 | 25.000 | 50.000 | 25.000 | 36.000 | 8.000 | 4.3548 | 1.4516 | 0.4839 | 0.9677 | 0.4839 | 0.6968 | 0.1548 |
| season | 0.20 | 13 | 68.200 | 31.000 | 68.000 | 31.000 | 47.000 | 9.000 | 4.0631 | 1.4417 | 0.4515 | 0.9903 | 0.4515 | 0.6845 | 0.1311 |
| Metric | Value |
|---|---|
| predicted_BB | 2.3600 |
| predicted_ER | 2.2910 |
| predicted_ERA | 3.7257 |
| predicted_H | 4.9510 |
| predicted_HR | 0.7890 |
| predicted_IP | 5.2000 |
| predicted_SO | 4.1650 |
| predicted_WHIP | 1.3209 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 2.3600 | 2.1917 | model_form_blend |
| predicted_ER | 0.0000 | 2.2910 | 1.2203 | model_form_blend |
| predicted_ERA | - | 3.7257 | 3.7257 | form_only |
| predicted_H | 5.0000 | 4.9510 | 4.9739 | model_form_blend |
| predicted_HR | 0.0000 | 0.7890 | 0.4202 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 4.0000 | 4.1650 | 4.0879 | model_form_blend |
| predicted_WHIP | - | 1.3209 | 1.3209 | 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.0 |
| H | 5 |
| R | 0 |
| ER | 0 |
| BB | 2 |
| SO | 4 |
| HR | 0 |
| BF | 22 |
| Pitches | 92 |
| 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 | 4 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 27 |
| Pitching_ER | 3 |
| Pitching_ERA | 4.06 |
| 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 | 6.0 |
| Pitching_Pitches | 105 |
| Pitching_R | 3 |
| Pitching_SO | 5 |
| Pitching_Strikes | 65 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260602_KC@CIN |
| game_type | full |
| mlbID | 671096 |
| playerID | 671096 |
| playerName | Andrew Abbott |
| pos | P |
| started | True |
| startingPosition | P |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-02 |
| sl_k_percent | 15.8 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.323 |
| sl_xwoba | 0.345 |
| sl_sweet_spot_percent | 31.5 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 38.4 |
| sl_whiff_percent | 21.2 |
| sl_swing_percent | 46.4 |
| sl_avg_best_speed | 79.636279806 |
| sl_avg_hyper_speed | 94.103401359 |
| 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.594 | 1.000 | 0.406 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.344 | 0.000 | 0.656 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.719 | 0.000 | 0.281 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.787 | 1.000 | 0.213 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.906 | 0.000 | -0.906 | 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": "656271",
"player_name": "Brock Burke",
"position": "Middle Reliever",
"team": "CIN",
"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": 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": 1.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": 1.0,
"after": 1.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": 1.0,
"after": 1.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 | 1.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.100 | 1.000 | 2.000 | 3.000 | 4.000 | 1.000 | 1.6875 | 0.9375 | 0.1875 | 0.3750 | 0.5625 | 0.7500 | 0.1875 |
| last_10 | 0.35 | 10 | 8.200 | 4.000 | 5.000 | 5.000 | 4.000 | 2.000 | 4.1538 | 1.1538 | 0.4615 | 0.5769 | 0.5769 | 0.4615 | 0.2308 |
| season | 0.20 | 32 | 30.100 | 11.000 | 23.000 | 19.000 | 29.000 | 3.000 | 3.2637 | 1.3846 | 0.3626 | 0.7582 | 0.6264 | 0.9560 | 0.0989 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4820 |
| predicted_ER | 0.3940 |
| predicted_ERA | 3.5473 |
| predicted_H | 0.7200 |
| predicted_HR | 0.1640 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8010 |
| predicted_WHIP | 1.2024 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.4820 | 0.7629 | model_form_blend |
| predicted_ER | 1.0000 | 0.3940 | 0.7226 | model_form_blend |
| predicted_ERA | - | 3.5473 | 3.5473 | form_only |
| predicted_H | 1.0000 | 0.7200 | 0.8718 | model_form_blend |
| predicted_HR | 1.0000 | 0.1640 | 0.6173 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.8010 | 0.3667 | model_form_blend |
| predicted_WHIP | - | 1.2024 | 1.2024 | 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 | 1 |
| ER | 1 |
| BB | 1 |
| SO | 0 |
| HR | 1 |
| 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 | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.26 |
| Pitching_Flyouts | 2 |
| 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 | 14 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_CIN@STL |
| game_type | full |
| mlbID | 656271 |
| playerID | 656271 |
| playerName | Brock Burke |
| pos | P |
| started | False |
| startingPosition | P |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.8 |
| sl_bb_percent | 14.3 |
| sl_woba | 0.312 |
| sl_xwoba | 0.338 |
| sl_sweet_spot_percent | 36.9 |
| sl_barrel_batted_rate | 11.5 |
| sl_hard_hit_percent | 32.1 |
| sl_whiff_percent | 30.0 |
| sl_swing_percent | 43.7 |
| sl_avg_best_speed | 77.381162051 |
| sl_avg_hyper_speed | 93.410477922 |
| 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.452 | 1.000 | -0.452 | -1.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.613 | 2.000 | -0.613 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.716 | 0.000 | 0.284 | 1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.935 | 0.000 | -0.935 | 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": "594580",
"player_name": "Sam Moll",
"position": "Middle Reliever",
"team": "CIN",
"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 | 4.100 | 2.000 | 2.000 | 2.000 | 6.000 | 1.000 | 4.1538 | 0.9231 | 0.4615 | 0.4615 | 0.4615 | 1.3846 | 0.2308 |
| last_10 | 0.35 | 10 | 9.200 | 3.000 | 5.000 | 3.000 | 13.000 | 1.000 | 2.7931 | 0.8276 | 0.3103 | 0.5172 | 0.3103 | 1.3448 | 0.1035 |
| season | 0.20 | 29 | 27.100 | 9.000 | 16.000 | 13.000 | 29.000 | 3.000 | 2.9634 | 1.0610 | 0.3293 | 0.5854 | 0.4756 | 1.0610 | 0.1098 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3890 |
| predicted_ER | 0.4320 |
| predicted_ERA | 3.8838 |
| predicted_H | 0.7230 |
| predicted_HR | 0.1510 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1270 |
| predicted_WHIP | 1.1119 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3890 | 0.1738 | model_form_blend |
| predicted_ER | 0.0000 | 0.4320 | 0.1930 | model_form_blend |
| predicted_ERA | - | 3.8838 | 3.8838 | form_only |
| predicted_H | 0.0000 | 0.7230 | 0.3231 | model_form_blend |
| predicted_HR | 0.0000 | 0.1510 | 0.0675 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1270 | 0.5036 | model_form_blend |
| predicted_WHIP | - | 1.1119 | 1.1119 | 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 | 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 | 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 | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.96 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 16 |
| Pitching_R | 2 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260607_CIN@STL |
| game_type | full |
| mlbID | 594580 |
| playerID | 594580 |
| playerName | Sam Moll |
| pos | P |
| started | False |
| startingPosition | P |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.6 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.29 |
| sl_xwoba | 0.312 |
| sl_sweet_spot_percent | 24.3 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 30.0 |
| sl_whiff_percent | 25.1 |
| sl_swing_percent | 40.3 |
| sl_avg_best_speed | 77.234646333 |
| sl_avg_hyper_speed | 93.518077333 |
| 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 | 1.000 | -0.333 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.417 | 0.000 | -0.417 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.833 | 1.000 | 0.167 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.883 | 1.200 | 0.117 | -0.200 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.000 | 2.000 | -1.000 | -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.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": "622088",
"player_name": "Tejay Antone",
"position": "Middle Reliever",
"team": "CIN",
"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.6667,
"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": 0.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.5,
"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.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": 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.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.4999,
"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.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 | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| 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 | 0.000 | 5.000 | 3.000 | 5.000 | 0.000 | 0.0000 | 1.7143 | 0.0000 | 1.0714 | 0.6429 | 1.0714 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 4.000 | 9.000 | 4.000 | 10.000 | 1.000 | 3.6000 | 1.3000 | 0.4000 | 0.9000 | 0.4000 | 1.0000 | 0.1000 |
| season | 0.20 | 12 | 12.000 | 5.000 | 10.000 | 4.000 | 12.000 | 1.000 | 3.7500 | 1.1667 | 0.4167 | 0.8333 | 0.3333 | 1.0000 | 0.0833 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3150 |
| predicted_ER | 0.3100 |
| predicted_ERA | 3.6068 |
| predicted_H | 0.7430 |
| predicted_HR | 0.0860 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7470 |
| predicted_WHIP | 1.3663 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3150 | 0.1145 | model_form_blend |
| predicted_ER | 0.0000 | 0.3100 | 0.1126 | model_form_blend |
| predicted_ERA | - | 3.6068 | 3.6068 | form_only |
| predicted_H | 1.0000 | 0.7430 | 0.9066 | model_form_blend |
| predicted_HR | 0.0000 | 0.0860 | 0.0312 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7470 | 0.2714 | model_form_blend |
| predicted_WHIP | - | 1.3663 | 1.3663 | 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 | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.75 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 20 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260606_CIN@STL |
| game_type | full |
| mlbID | 622088 |
| playerID | 622088 |
| playerName | Tejay Antone |
| pos | P |
| started | False |
| startingPosition | P |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-06 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 8.0 |
| sl_woba | 0.287 |
| sl_xwoba | 0.322 |
| sl_sweet_spot_percent | 27.3 |
| sl_barrel_batted_rate | 9.7 |
| sl_hard_hit_percent | 42.4 |
| sl_whiff_percent | 27.3 |
| sl_swing_percent | 45.6 |
| sl_avg_best_speed | 79.469664375 |
| sl_avg_hyper_speed | 93.930225806 |
| 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.464 | 0.000 | -0.464 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.607 | 0.000 | 0.393 | 1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.893 | 0.000 | 1.107 | 2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.811 | 1.000 | 0.189 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.821 | 0.000 | 0.179 | 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": "663574",
"player_name": "Tony Santillan",
"position": "Middle Reliever",
"team": "CIN",
"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": 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": 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": 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": 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": 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 | 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.100 | 4.000 | 5.000 | 2.000 | 2.000 | 1.000 | 10.8000 | 2.1000 | 1.2000 | 1.5000 | 0.6000 | 0.6000 | 0.3000 |
| last_10 | 0.35 | 10 | 8.100 | 7.000 | 9.000 | 4.000 | 6.000 | 3.000 | 7.5600 | 1.5600 | 0.8400 | 1.0800 | 0.4800 | 0.7200 | 0.3600 |
| season | 0.20 | 27 | 24.100 | 13.000 | 21.000 | 13.000 | 23.000 | 7.000 | 4.8082 | 1.3973 | 0.5343 | 0.8630 | 0.5343 | 0.9452 | 0.2877 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3170 |
| predicted_ER | 0.4950 |
| predicted_ERA | 6.3749 |
| predicted_H | 0.7620 |
| predicted_HR | 0.1590 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.5770 |
| predicted_WHIP | 1.5418 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3170 | 0.1378 | model_form_blend |
| predicted_ER | 1.0000 | 0.4950 | 0.7805 | model_form_blend |
| predicted_ERA | - | 6.3749 | 6.3749 | form_only |
| predicted_H | 2.0000 | 0.7620 | 1.4620 | model_form_blend |
| predicted_HR | 1.0000 | 0.1590 | 0.6345 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.5770 | 0.8162 | model_form_blend |
| predicted_WHIP | - | 1.5418 | 1.5418 | 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.0 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 1 |
| 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 | 6.29 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 3 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 3 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260607_CIN@STL |
| game_type | full |
| mlbID | 663574 |
| playerID | 663574 |
| playerName | Tony Santillan |
| pos | P |
| started | False |
| startingPosition | P |
| team | CIN |
| teamID | 7 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.1 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.397 |
| sl_xwoba | 0.376 |
| sl_sweet_spot_percent | 39.7 |
| sl_barrel_batted_rate | 13.9 |
| sl_hard_hit_percent | 50.7 |
| sl_whiff_percent | 20.7 |
| sl_swing_percent | 43.7 |
| sl_avg_best_speed | 83.661228889 |
| sl_avg_hyper_speed | 95.336701831 |
| Field | Value |
|---|---|
| Pitcher | Walker Buehler |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.4071 |
| ESPN Rank | 183 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0593 |
| Avg Velo | 88.6512 |
| Avg Spin | 2240.4019 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 2 |
| Pre H | 4 |
| Pre BB | 1 |
| Pre SO | 5 |
| Season ERA | 4.5260 |
| Season WHIP | 1.2832 |
| Role Avg IP | 4.8060 |
| Recent Avg IP | 5.4670 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"opponent": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"edges": {
"quality_edge": 0.108,
"offense_edge": -0.1306,
"opponent_offense_edge": -0.056,
"defense_strength": 0.0499,
"opponent_defense_weakness": 0.1299,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0081,
"run_prevention": 0.9807,
"strikeout": 1.0077
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "621111",
"profile": {
"available": true,
"pitcher_id": "621111",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 220.0,
"k_percent": 20.1,
"bb_percent": 8.2,
"woba": 0.299,
"xwoba": 0.337,
"sweet_spot_percent": 37.8,
"barrel_batted_rate": 8.1,
"hard_hit_percent": 40.7,
"avg_best_speed": 80.8121,
"avg_hyper_speed": 94.2474,
"whiff_percent": 19.7,
"swing_percent": 43.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4195,
"command_and_miss": -0.44,
"regression_edge": -1.0857,
"xwoba_edge": -0.6429,
"barrel_edge": -0.2222,
"hard_hit_edge": -0.3,
"whiff_edge": -0.8714,
"bb_edge": 0.225,
"pitch_design_score": -0.0593
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "621111",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 83,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 83,
"pitch_usage": 0.0,
"release_speed": 88.6511734612526,
"release_spin_rate": 2240.4018528786537,
"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": 83,
"pitch_usage": 0.0,
"release_speed": 88.6511734612526,
"release_spin_rate": 2240.4018528786537,
"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.6512,
"release_spin_rate": 2240.4019,
"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.0593,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.4236,
"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.4071,
"sample_weight": 0.88,
"run_prevention_factor": 1.0346,
"strikeout_factor": 0.9552,
"walk_factor": 0.9842,
"homer_factor": 1.0432,
"woba_minus_xwoba": -0.038,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "621111",
"espn_id": 39251,
"player_name": "Walker Buehler",
"team": "SD",
"role": "pitcher",
"espn_rank": 183,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 183,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 3.0,
"qs_rank": 88,
"era_value": 4.526,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 57.2,
"ip_rank": 100,
"h_value": 54.0,
"h_rank": 96,
"er_value": 29.0,
"er_rank": 69,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 20.0,
"bb_rank": 87,
"k_value": 49.0,
"k_rank": 93,
"k_per_9_value": 7.647399,
"k_per_9_rank": 25,
"whip_value": 1.2832,
"whip_rank": null,
"war_value": 0.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0304,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.0304,
"adjusted": 4
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9861,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 1.038,
"adjusted": 0
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9606,
"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": 51.0,
"ER": 22,
"H": 46,
"BB": 15,
"SO": 42,
"HR": 3,
"ERA": 3.8823529411764706,
"WHIP": 1.196078431372549,
"K9": 7.411764705882353,
"HR9": 0.5294117647058824,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "621111",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 83,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 83,
"pitch_usage": 0.0,
"release_speed": 88.6511734612526,
"release_spin_rate": 2240.4018528786537,
"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": 83,
"pitch_usage": 0.0,
"release_speed": 88.6511734612526,
"release_spin_rate": 2240.4018528786537,
"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.6512,
"release_spin_rate": 2240.4019,
"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.0593,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.4236,
"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": "621111",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 5.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 27.1,
"ER": 10.0,
"R": 10.0,
"H": 20.0,
"BB": 8.0,
"SO": 20.0,
"HR": 2.0,
"BF": 107.0,
"Pitches": 419.0
},
"per_game": {
"IP": 5.1,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 1.6,
"SO": 4.0,
"HR": 0.4,
"BF": 21.4,
"Pitches": 83.8
},
"rates": {
"ERA": 3.2927,
"WHIP": 1.0244,
"ER_per_IP": 0.36585,
"H_per_IP": 0.73171,
"BB_per_IP": 0.29268,
"SO_per_IP": 0.73171,
"HR_per_IP": 0.07317
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 51.0,
"ER": 22.0,
"R": 22.0,
"H": 46.0,
"BB": 15.0,
"SO": 42.0,
"HR": 3.0,
"BF": 211.0,
"Pitches": 831.0
},
"per_game": {
"IP": 5.0,
"ER": 2.2,
"R": 2.2,
"H": 4.6,
"BB": 1.5,
"SO": 4.2,
"HR": 0.3,
"BF": 21.1,
"Pitches": 83.1
},
"rates": {
"ERA": 3.8824,
"WHIP": 1.1961,
"ER_per_IP": 0.43137,
"H_per_IP": 0.90196,
"BB_per_IP": 0.29412,
"SO_per_IP": 0.82353,
"HR_per_IP": 0.05882
}
},
"season": {
"games": 12,
"totals": {
"IP": 57.2,
"ER": 29.0,
"R": 29.0,
"H": 54.0,
"BB": 20.0,
"SO": 49.0,
"HR": 4.0,
"BF": 244.0,
"Pitches": 964.0
},
"per_game": {
"IP": 4.2,
"ER": 2.4167,
"R": 2.4167,
"H": 4.5,
"BB": 1.6667,
"SO": 4.0833,
"HR": 0.3333,
"BF": 20.3333,
"Pitches": 80.3333
},
"rates": {
"ERA": 4.526,
"WHIP": 1.2832,
"ER_per_IP": 0.50289,
"H_per_IP": 0.93642,
"BB_per_IP": 0.34682,
"SO_per_IP": 0.84971,
"HR_per_IP": 0.06936
}
}
},
"weighted_prediction": {
"predicted_IP": 5.0,
"predicted_ER": 2.25,
"predicted_H": 4.482,
"predicted_BB": 1.659,
"predicted_SO": 4.284,
"predicted_HR": 0.457,
"predicted_ERA": 3.9274,
"predicted_WHIP": 1.1909
}
}{
"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.1,
"form": 5.0,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 2.25,
"final": 2.1314,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 4.482,
"final": 4.2534,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.659,
"final": 1.3465,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 4.284,
"final": 4.6236,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.457,
"final": 0.7145,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9274,
"final": 3.9274,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1909,
"final": 1.1909,
"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 | Adrian Morejon |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4427 |
| ESPN Rank | 554 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2800 |
| Avg Velo | 95.8045 |
| Avg Spin | 2320.5686 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 4.5957 |
| Season WHIP | 1.1489 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"opponent": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"edges": {
"quality_edge": 0.108,
"offense_edge": -0.1306,
"opponent_offense_edge": -0.056,
"defense_strength": 0.0499,
"opponent_defense_weakness": 0.1299,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0081,
"run_prevention": 0.9807,
"strikeout": 1.0077
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "670970",
"profile": {
"available": true,
"pitcher_id": "670970",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 113.0,
"k_percent": 28.2,
"bb_percent": 5.3,
"woba": 0.274,
"xwoba": 0.262,
"sweet_spot_percent": 32.6,
"barrel_batted_rate": 2.4,
"hard_hit_percent": 30.2,
"avg_best_speed": 73.3806,
"avg_hyper_speed": 92.8996,
"whiff_percent": 35.5,
"swing_percent": 53.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.1763,
"command_and_miss": 1.0157,
"regression_edge": 0.3429,
"xwoba_edge": 1.5,
"barrel_edge": 1.0444,
"hard_hit_edge": 1.2,
"whiff_edge": 1.3857,
"bb_edge": 0.95,
"pitch_design_score": 0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "670970",
"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": 95.80445775047212,
"release_spin_rate": 2320.568589429103,
"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": 95.80445775047212,
"release_spin_rate": 2320.568589429103,
"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": 95.8045,
"release_spin_rate": 2320.5686,
"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.4427,
"sample_weight": 0.452,
"run_prevention_factor": 0.9624,
"strikeout_factor": 1.0387,
"walk_factor": 0.9656,
"homer_factor": 0.9202,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670970",
"espn_id": 40917,
"player_name": "Adrian Morejon",
"team": "SD",
"role": "pitcher",
"espn_rank": 554,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 554,
"gp_value": 29.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.5957,
"era_rank": null,
"w_value": 4.0,
"w_rank": 52,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 11.0,
"hld_rank": 8,
"ip_value": 31.1,
"ip_rank": 183,
"h_value": 29.0,
"h_rank": 183,
"er_value": 16.0,
"er_rank": 168,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 7.0,
"bb_rank": 358,
"k_value": 37.0,
"k_rank": 147,
"k_per_9_value": 10.62766,
"k_per_9_rank": 21,
"whip_value": 1.1489,
"whip_rank": null,
"war_value": -0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.983,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.983,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9845,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9639,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0175,
"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": 3,
"H": 7,
"BB": 1,
"SO": 10,
"HR": 0,
"ERA": 2.8928571428571432,
"WHIP": 0.8571428571428572,
"K9": 9.642857142857144,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "670970",
"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": 95.80445775047212,
"release_spin_rate": 2320.568589429103,
"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": 95.80445775047212,
"release_spin_rate": 2320.568589429103,
"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": 95.8045,
"release_spin_rate": 2320.5686,
"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": 6.187,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5531,
"prior_weight": 0.4469
},
"role": "pitcher",
"player_id": "670970",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 3.0,
"R": 3.0,
"H": 5.0,
"BB": 1.0,
"SO": 4.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 80.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 1.0,
"BB": 0.2,
"SO": 0.8,
"HR": 0.0,
"BF": 3.8,
"Pitches": 16.0
},
"rates": {
"ERA": 6.75,
"WHIP": 1.5,
"ER_per_IP": 0.75,
"H_per_IP": 1.25,
"BB_per_IP": 0.25,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 3.0,
"R": 3.0,
"H": 7.0,
"BB": 1.0,
"SO": 10.0,
"HR": 0.0,
"BF": 36.0,
"Pitches": 149.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.7,
"BB": 0.1,
"SO": 1.0,
"HR": 0.0,
"BF": 3.6,
"Pitches": 14.9
},
"rates": {
"ERA": 2.8929,
"WHIP": 0.8571,
"ER_per_IP": 0.32143,
"H_per_IP": 0.75,
"BB_per_IP": 0.10714,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 31.1,
"ER": 16.0,
"R": 17.0,
"H": 29.0,
"BB": 7.0,
"SO": 37.0,
"HR": 2.0,
"BF": 131.0,
"Pitches": 515.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5517,
"R": 0.5862,
"H": 1.0,
"BB": 0.2414,
"SO": 1.2759,
"HR": 0.069,
"BF": 4.5172,
"Pitches": 17.7586
},
"rates": {
"ERA": 4.5957,
"WHIP": 1.1489,
"ER_per_IP": 0.51064,
"H_per_IP": 0.92553,
"BB_per_IP": 0.2234,
"SO_per_IP": 1.18085,
"HR_per_IP": 0.06383
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.479,
"predicted_H": 0.905,
"predicted_BB": 0.248,
"predicted_SO": 0.921,
"predicted_HR": 0.064,
"predicted_ERA": 4.6984,
"predicted_WHIP": 1.2571
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5388,
"form_weight": 0.4612,
"form_reliability": 0.5531,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.187,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5531,
"prior_weight": 0.4469
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.479,
"final": 0.2209,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.905,
"final": 0.4174,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.248,
"final": 0.1144,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.921,
"final": 0.9636,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.064,
"final": 0.0295,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.6984,
"final": 4.6984,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2571,
"final": 1.2571,
"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 | Mason Miller |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.7887 |
| ESPN Rank | 46 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2340 |
| Avg Velo | 93.8895 |
| Avg Spin | 2463.0669 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.0125 |
| Season WHIP | 0.9000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"opponent": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"edges": {
"quality_edge": 0.108,
"offense_edge": -0.1306,
"opponent_offense_edge": -0.056,
"defense_strength": 0.0499,
"opponent_defense_weakness": 0.1299,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0081,
"run_prevention": 0.9807,
"strikeout": 1.0077
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "695243",
"profile": {
"available": true,
"pitcher_id": "695243",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 90.0,
"k_percent": 49.0,
"bb_percent": 11.5,
"woba": 0.184,
"xwoba": 0.176,
"sweet_spot_percent": 29.3,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 14.6,
"avg_best_speed": 71.7627,
"avg_hyper_speed": 90.7162,
"whiff_percent": 50.2,
"swing_percent": 45.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 2.1826,
"command_and_miss": 1.88,
"regression_edge": 0.2286,
"xwoba_edge": 2.5,
"barrel_edge": 1.5778,
"hard_hit_edge": 2.5,
"whiff_edge": 2.5,
"bb_edge": -0.6,
"pitch_design_score": 0.234
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "695243",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 93.8894682638479,
"release_spin_rate": 2463.0668845480945,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 93.8894682638479,
"release_spin_rate": 2463.0668845480945,
"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.8895,
"release_spin_rate": 2463.0669,
"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.234,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.6717,
"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.7887,
"sample_weight": 0.45,
"run_prevention_factor": 0.933,
"strikeout_factor": 1.09,
"walk_factor": 1.0216,
"homer_factor": 0.8644,
"woba_minus_xwoba": 0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695243",
"espn_id": 4730225,
"player_name": "Mason Miller",
"team": "SD",
"role": "pitcher",
"espn_rank": 46,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 46,
"gp_value": 26.0,
"gp_rank": 74,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.0125,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 18.0,
"sv_rank": 2,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 26.2,
"ip_rank": 254,
"h_value": 12.0,
"h_rank": 423,
"er_value": 3.0,
"er_rank": 533,
"hr_value": 0.0,
"hr_rank": 552,
"bb_value": 12.0,
"bb_rank": 219,
"k_value": 51.0,
"k_rank": 84,
"k_per_9_value": 17.2125,
"k_per_9_rank": 8,
"whip_value": 0.9,
"whip_rank": null,
"war_value": 1.4,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9698,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9698,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0097,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.939,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0405,
"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.1,
"ER": 1,
"H": 5,
"BB": 9,
"SO": 19,
"HR": 0,
"ERA": 0.870967741935484,
"WHIP": 1.3548387096774195,
"K9": 16.548387096774196,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "695243",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 93.8894682638479,
"release_spin_rate": 2463.0668845480945,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 93.8894682638479,
"release_spin_rate": 2463.0668845480945,
"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.8895,
"release_spin_rate": 2463.0669,
"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.234,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.6717,
"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.266,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5129,
"prior_weight": 0.4871
},
"role": "pitcher",
"player_id": "695243",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 26,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 2.0,
"H": 2.0,
"BB": 4.0,
"SO": 6.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 99.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.4,
"H": 0.4,
"BB": 0.8,
"SO": 1.2,
"HR": 0.0,
"BF": 4.0,
"Pitches": 19.8
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.2857,
"ER_per_IP": 0.21429,
"H_per_IP": 0.42857,
"BB_per_IP": 0.85714,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 1.0,
"R": 2.0,
"H": 5.0,
"BB": 9.0,
"SO": 19.0,
"HR": 0.0,
"BF": 46.0,
"Pitches": 217.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.2,
"H": 0.5,
"BB": 0.9,
"SO": 1.9,
"HR": 0.0,
"BF": 4.6,
"Pitches": 21.7
},
"rates": {
"ERA": 0.871,
"WHIP": 1.3548,
"ER_per_IP": 0.09677,
"H_per_IP": 0.48387,
"BB_per_IP": 0.87097,
"SO_per_IP": 1.83871,
"HR_per_IP": 0.0
}
},
"season": {
"games": 26,
"totals": {
"IP": 26.2,
"ER": 3.0,
"R": 4.0,
"H": 12.0,
"BB": 12.0,
"SO": 51.0,
"HR": 0.0,
"BF": 104.0,
"Pitches": 447.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1154,
"R": 0.1538,
"H": 0.4615,
"BB": 0.4615,
"SO": 1.9615,
"HR": 0.0,
"BF": 4.0,
"Pitches": 17.1923
},
"rates": {
"ERA": 1.0125,
"WHIP": 0.9,
"ER_per_IP": 0.1125,
"H_per_IP": 0.45,
"BB_per_IP": 0.45,
"SO_per_IP": 1.9125,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.315,
"predicted_H": 0.698,
"predicted_BB": 0.578,
"predicted_SO": 1.278,
"predicted_HR": 0.068,
"predicted_ERA": 2.8308,
"predicted_WHIP": 1.2762
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5558,
"form_weight": 0.4442,
"form_reliability": 0.5129,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.266,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5129,
"prior_weight": 0.4871
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.315,
"final": 0.1399,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.698,
"final": 0.8659,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.578,
"final": 0.2567,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.278,
"final": 0.5677,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.068,
"final": 0.0302,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.8308,
"final": 2.8308,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2762,
"final": 1.2762,
"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 | Jason Adam |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0569 |
| ESPN Rank | 99 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1272 |
| Avg Velo | 87.4393 |
| Avg Spin | 2378.8974 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 1.6364 |
| Season WHIP | 1.1818 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SD",
"games": 70,
"wins": 35,
"losses": 35,
"win_pct": 0.5,
"runs_scored": 272.0,
"runs_allowed": 298.0,
"run_differential": -26.0,
"run_differential_per_game": -0.3714,
"avg_runs_scored": 3.8857,
"avg_runs_allowed": 4.2571,
"offense_index": 0.8694,
"defense_index": 1.0499,
"current_streak": "L1",
"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.1507
},
"opponent": {
"team": "CIN",
"games": 73,
"wins": 33,
"losses": 40,
"win_pct": 0.4521,
"runs_scored": 308.0,
"runs_allowed": 375.0,
"run_differential": -67.0,
"run_differential_per_game": -0.9178,
"avg_runs_scored": 4.2192,
"avg_runs_allowed": 5.137,
"offense_index": 0.944,
"defense_index": 0.8701,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.2,
"avg_runs_allowed": 5.9,
"run_differential": -27.0
},
"available": true,
"quality_score": -0.2587
},
"edges": {
"quality_edge": 0.108,
"offense_edge": -0.1306,
"opponent_offense_edge": -0.056,
"defense_strength": 0.0499,
"opponent_defense_weakness": 0.1299,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0081,
"run_prevention": 0.9807,
"strikeout": 1.0077
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "592094",
"profile": {
"available": true,
"pitcher_id": "592094",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 70.0,
"k_percent": 14.3,
"bb_percent": 5.5,
"woba": 0.305,
"xwoba": 0.294,
"sweet_spot_percent": 26.4,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 40.3,
"avg_best_speed": 77.0242,
"avg_hyper_speed": 93.532,
"whiff_percent": 26.9,
"swing_percent": 54.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3354,
"command_and_miss": -0.3179,
"regression_edge": 0.3143,
"xwoba_edge": 0.5857,
"barrel_edge": 0.0444,
"hard_hit_edge": -0.2429,
"whiff_edge": 0.1571,
"bb_edge": 0.9,
"pitch_design_score": -0.1272
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "592094",
"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": 87.43928033954349,
"release_spin_rate": 2378.897408650375,
"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": 87.43928033954349,
"release_spin_rate": 2378.897408650375,
"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.4393,
"release_spin_rate": 2378.8974,
"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.1272,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.9084,
"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.0569,
"sample_weight": 0.45,
"run_prevention_factor": 0.9952,
"strikeout_factor": 0.9807,
"walk_factor": 0.9676,
"homer_factor": 0.9949,
"woba_minus_xwoba": 0.011,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "592094",
"espn_id": 32145,
"player_name": "Jason Adam",
"team": "SD",
"role": "pitcher",
"espn_rank": 99,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 99,
"gp_value": 25.0,
"gp_rank": 92,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.6363,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 13.0,
"hld_rank": 4,
"ip_value": 22.0,
"ip_rank": 324,
"h_value": 21.0,
"h_rank": 280,
"er_value": 4.0,
"er_rank": 497,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 5.0,
"bb_rank": 443,
"k_value": 13.0,
"k_rank": 416,
"k_per_9_value": 5.318182,
"k_per_9_rank": 34,
"whip_value": 1.1818,
"whip_rank": null,
"war_value": 0.94,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9978,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9978,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9854,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9977,
"adjusted": 0
},
"predicted_SO": {
"original": 0.0,
"factor": 0.9913,
"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": 2,
"H": 12,
"BB": 1,
"SO": 7,
"HR": 2,
"ERA": 2.16,
"WHIP": 1.5600000000000003,
"K9": 7.560000000000001,
"HR9": 2.16,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "592094",
"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": 87.43928033954349,
"release_spin_rate": 2378.897408650375,
"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": 87.43928033954349,
"release_spin_rate": 2378.897408650375,
"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.4393,
"release_spin_rate": 2378.8974,
"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.1272,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.9084,
"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.344,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4649,
"prior_weight": 0.5351
},
"role": "pitcher",
"player_id": "592094",
"report_date": "20260608_C",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.1,
"ER": 2.0,
"R": 2.0,
"H": 9.0,
"BB": 0.0,
"SO": 3.0,
"HR": 2.0,
"BF": 18.0,
"Pitches": 60.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 1.8,
"BB": 0.0,
"SO": 0.6,
"HR": 0.4,
"BF": 3.6,
"Pitches": 12.0
},
"rates": {
"ERA": 5.4,
"WHIP": 2.7,
"ER_per_IP": 0.6,
"H_per_IP": 2.7,
"BB_per_IP": 0.0,
"SO_per_IP": 0.9,
"HR_per_IP": 0.6
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 2.0,
"R": 2.0,
"H": 12.0,
"BB": 1.0,
"SO": 7.0,
"HR": 2.0,
"BF": 36.0,
"Pitches": 134.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.2,
"H": 1.2,
"BB": 0.1,
"SO": 0.7,
"HR": 0.2,
"BF": 3.6,
"Pitches": 13.4
},
"rates": {
"ERA": 2.16,
"WHIP": 1.56,
"ER_per_IP": 0.24,
"H_per_IP": 1.44,
"BB_per_IP": 0.12,
"SO_per_IP": 0.84,
"HR_per_IP": 0.24
}
},
"season": {
"games": 25,
"totals": {
"IP": 22.0,
"ER": 4.0,
"R": 4.0,
"H": 21.0,
"BB": 5.0,
"SO": 13.0,
"HR": 3.0,
"BF": 91.0,
"Pitches": 363.0
},
"per_game": {
"IP": 1.0,
"ER": 0.16,
"R": 0.16,
"H": 0.84,
"BB": 0.2,
"SO": 0.52,
"HR": 0.12,
"BF": 3.64,
"Pitches": 14.52
},
"rates": {
"ERA": 1.6364,
"WHIP": 1.1818,
"ER_per_IP": 0.18182,
"H_per_IP": 0.95455,
"BB_per_IP": 0.22727,
"SO_per_IP": 0.59091,
"HR_per_IP": 0.13636
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.308,
"predicted_H": 0.977,
"predicted_BB": 0.164,
"predicted_SO": 0.614,
"predicted_HR": 0.176,
"predicted_ERA": 3.9682,
"predicted_WHIP": 1.636
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5761,
"form_weight": 0.4239,
"form_reliability": 0.4649,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.344,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4649,
"prior_weight": 0.5351
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.308,
"final": 0.7066,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.977,
"final": 0.9902,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.164,
"final": 0.6456,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.614,
"final": 0.8364,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.176,
"final": 0.6507,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9682,
"final": 3.9682,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.636,
"final": 1.636,
"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.131 | 0.000 | 0.000 | Hitting_2B | 0.131 | 1.000 | -0.131 | -1.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 4.350 | 5.000 | 7.000 | Hitting_AB | 3.840 | 4.000 | 1.160 | 1.000 |
| predicted_AVG | 0.248 | 0.200 | 0.286 | Hitting_AVG | 0.265 | 0.250 | -0.065 | -0.050 |
| predicted_BB | 0.441 | 0.000 | 1.000 | Hitting_BB | 0.439 | 1.000 | -0.439 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.110 | 1.000 | -0.110 | -1.000 |
| predicted_H | 1.080 | 1.000 | 2.000 | Hitting_H | 1.017 | 1.000 | -0.017 | 0.000 |
| predicted_HR | 0.090 | 1.000 | 0.000 | Hitting_HR | 0.004 | 0.000 | 0.996 | 1.000 |
| predicted_OBP | 0.327 | 0.200 | 0.375 | Hitting_OBP | 0.340 | 0.400 | -0.140 | -0.200 |
| predicted_R | 0.377 | 1.000 | 1.000 | Hitting_R | 0.376 | 0.000 | 0.624 | 1.000 |
| predicted_RBI | 0.370 | 1.000 | 1.000 | Hitting_RBI | 0.304 | 0.000 | 0.696 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.270 | 1.000 | -0.270 | -1.000 |
| predicted_SLG | 0.374 | 0.800 | 0.286 | Hitting_SLG | 0.311 | 0.500 | 0.489 | 0.300 |
| predicted_SO | 0.996 | 0.000 | 2.000 | Hitting_SO | 0.992 | 1.000 | -0.992 | -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_HR: 0.0900 -> 1.0000 (boost 0.9100, better) |
| Biggest Deboost | predicted_SO: 0.9960 -> 0.0000 (deboost -0.9960, 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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 4.3500 -> 6.9618 (boost 2.6118, better) | predicted_SLG: 0.3740 -> 0.3606 (deboost -0.0134, 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_AVG: 0.2619 -> 0.2691 (boost 0.0072, better) | predicted_SLG: 0.3606 -> 0.3458 (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 | 4 | 3 | 3 | 4 | predicted_RBI: 0.5384 -> 1.0000 (boost 0.4616, better) | predicted_2B: 0.2556 -> 0.0000 (deboost -0.2556, worse) | AB rounded to 7 (raw=6.96), rates preserved: AVG=0.269 HR/AB=0.011 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.385) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6154 -> 1.0000 (boost 0.3846, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3290 -> 0.3750 (boost 0.0460, better) | predicted_SLG: 0.3458 -> 0.2860 (deboost -0.0598, 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_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3458 (boost 0.0598, better) | predicted_OBP: 0.3750 -> 0.3290 (deboost -0.0460, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665487",
"player_name": "Fernando Tatis Jr.",
"position": "2B",
"team": "SD",
"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.131,
"predicted_3B": 0.017,
"predicted_AB": 4.35,
"predicted_AVG": 0.248,
"predicted_BB": 0.441,
"predicted_H": 1.08,
"predicted_HR": 0.09,
"predicted_OBP": 0.327,
"predicted_R": 0.377,
"predicted_RBI": 0.37,
"predicted_SLG": 0.374,
"predicted_SO": 0.996
},
"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.0214,
"predicted_AB": 6.9618,
"predicted_AVG": 0.2619,
"predicted_BB": 0.623,
"predicted_H": 1.8699,
"predicted_HBP": 0.055,
"predicted_HR": 0.0785,
"predicted_OBP": 0.3306,
"predicted_R": 0.6134,
"predicted_RBI": 0.5366,
"predicted_SLG": 0.3606,
"predicted_SO": 1.7201
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.131,
"after": 0.2556,
"delta": 0.1246,
"percent_delta": 0.9511,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0214,
"delta": 0.0044,
"percent_delta": 0.2588,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.35,
"after": 6.9618,
"delta": 2.6118,
"percent_delta": 0.6004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2619,
"delta": 0.0139,
"percent_delta": 0.056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.441,
"after": 0.623,
"delta": 0.182,
"percent_delta": 0.4127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.08,
"after": 1.8699,
"delta": 0.7899,
"percent_delta": 0.7314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0785,
"delta": -0.0115,
"percent_delta": -0.1278,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3306,
"delta": 0.0036,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.377,
"after": 0.6134,
"delta": 0.2364,
"percent_delta": 0.6271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.5366,
"delta": 0.1666,
"percent_delta": 0.4503,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3606,
"delta": -0.0134,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.996,
"after": 1.7201,
"delta": 0.7241,
"percent_delta": 0.727,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 8,
"deboosted_metrics": 1,
"better_metrics": 7,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.35,
"after": 6.9618,
"delta": 2.6118,
"percent_delta": 0.6004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3606,
"delta": -0.0134,
"percent_delta": -0.0358,
"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.2556,
"predicted_3B": 0.0214,
"predicted_AB": 6.9618,
"predicted_AVG": 0.2691,
"predicted_BB": 0.6218,
"predicted_H": 1.8731,
"predicted_HBP": 0.055,
"predicted_HR": 0.0787,
"predicted_OBP": 0.329,
"predicted_R": 0.6154,
"predicted_RBI": 0.5384,
"predicted_SLG": 0.3458,
"predicted_SO": 1.7235
},
"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.0214,
"after": 0.0214,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.9618,
"after": 6.9618,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2619,
"after": 0.2691,
"delta": 0.0072,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.623,
"after": 0.6218,
"delta": -0.0012,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8699,
"after": 1.8731,
"delta": 0.0032,
"percent_delta": 0.0017,
"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.0785,
"after": 0.0787,
"delta": 0.0002,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3306,
"after": 0.329,
"delta": -0.0016,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6134,
"after": 0.6154,
"delta": 0.002,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5366,
"after": 0.5384,
"delta": 0.0018,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3606,
"after": 0.3458,
"delta": -0.0148,
"percent_delta": -0.041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7201,
"after": 1.7235,
"delta": 0.0034,
"percent_delta": 0.002,
"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.2619,
"after": 0.2691,
"delta": 0.0072,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3606,
"after": 0.3458,
"delta": -0.0148,
"percent_delta": -0.041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.96), rates preserved: AVG=0.269 HR/AB=0.011",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.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.0214,
"after": 0.0,
"delta": -0.0214,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.9618,
"after": 7.0,
"delta": 0.0382,
"percent_delta": 0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6218,
"after": 1.0,
"delta": 0.3782,
"percent_delta": 0.6082,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8731,
"after": 2.0,
"delta": 0.1269,
"percent_delta": 0.0677,
"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.0787,
"after": 0.0,
"delta": -0.0787,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5384,
"after": 1.0,
"delta": 0.4616,
"percent_delta": 0.8574,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7235,
"after": 2.0,
"delta": 0.2765,
"percent_delta": 0.1604,
"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.5384,
"after": 1.0,
"delta": 0.4616,
"percent_delta": 0.8574,
"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": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.385)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 7.0,
"after": 7.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": 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_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": 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": {
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.6154,
"after": 1.0,
"delta": 0.3846,
"percent_delta": 0.625,
"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": 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_R",
"before": 0.6154,
"after": 1.0,
"delta": 0.3846,
"percent_delta": 0.625,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2691,
"after": 0.286,
"delta": 0.0169,
"percent_delta": 0.0628,
"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": 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_OBP",
"before": 0.329,
"after": 0.375,
"delta": 0.046,
"percent_delta": 0.1398,
"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.3458,
"after": 0.286,
"delta": -0.0598,
"percent_delta": -0.1729,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.329,
"after": 0.375,
"delta": 0.046,
"percent_delta": 0.1398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3458,
"after": 0.286,
"delta": -0.0598,
"percent_delta": -0.1729,
"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": 5.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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 2.0,
"after": 0.0,
"delta": -2.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_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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.2691,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.329,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3458,
"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.286,
"after": 0.2691,
"delta": -0.0169,
"percent_delta": -0.0593,
"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.375,
"after": 0.329,
"delta": -0.046,
"percent_delta": -0.1227,
"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.286,
"after": 0.3458,
"delta": 0.0598,
"percent_delta": 0.2092,
"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.286,
"after": 0.3458,
"delta": 0.0598,
"percent_delta": 0.2092,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.329,
"delta": -0.046,
"percent_delta": -0.1227,
"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.131,
"after": 0.0,
"delta": -0.131,
"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": 4.35,
"after": 5.0,
"delta": 0.65,
"percent_delta": 0.1494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2691,
"delta": 0.0211,
"percent_delta": 0.0851,
"direction": "boost",
"projection_effect": "better",
"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": 1.08,
"after": 1.0,
"delta": -0.08,
"percent_delta": -0.0741,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 1.0,
"delta": 0.91,
"percent_delta": 10.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.329,
"delta": 0.002,
"percent_delta": 0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.377,
"after": 1.0,
"delta": 0.623,
"percent_delta": 1.6525,
"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.374,
"after": 0.3458,
"delta": -0.0282,
"percent_delta": -0.0754,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.996,
"after": 0.0,
"delta": -0.996,
"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_HR",
"before": 0.09,
"after": 1.0,
"delta": 0.91,
"percent_delta": 10.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.996,
"after": 0.0,
"delta": -0.996,
"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.131 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 4.350 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.441 | - |
| predicted_H | 1.080 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.327 | - |
| predicted_R | 0.377 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.374 | - |
| predicted_SO | 0.996 | - |
Final model 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.125 |
| predicted_3B | 0.021 | 0.004 |
| predicted_AB | 6.962 | 2.612 |
| predicted_AVG | 0.262 | 0.014 |
| predicted_BB | 0.623 | 0.182 |
| predicted_H | 1.870 | 0.790 |
| predicted_HBP | 0.055 | - |
| predicted_HR | 0.079 | -0.011 |
| predicted_OBP | 0.331 | 0.004 |
| predicted_R | 0.613 | 0.236 |
| predicted_RBI | 0.537 | 0.167 |
| predicted_SLG | 0.361 | -0.013 |
| predicted_SO | 1.720 | 0.724 |
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.021 | 0.000 |
| predicted_AB | 6.962 | 0.000 |
| predicted_AVG | 0.269 | 0.007 |
| predicted_BB | 0.622 | -0.001 |
| predicted_H | 1.873 | 0.003 |
| predicted_HBP | 0.055 | 0.000 |
| predicted_HR | 0.079 | 0.000 |
| predicted_OBP | 0.329 | -0.002 |
| predicted_R | 0.615 | 0.002 |
| predicted_RBI | 0.538 | 0.002 |
| predicted_SLG | 0.346 | -0.015 |
| predicted_SO | 1.724 | 0.003 |
AB rounded to 7 (raw=6.96), rates preserved: AVG=0.269 HR/AB=0.011
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.385)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.256 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 7.000 | 0.038 |
| predicted_AVG | 0.286 | 0.017 |
| predicted_BB | 1.000 | 0.378 |
| predicted_H | 2.000 | 0.127 |
| predicted_HR | 0.000 | -0.079 |
| predicted_OBP | 0.375 | 0.046 |
| predicted_R | 1.000 | 0.385 |
| predicted_RBI | 1.000 | 0.462 |
| predicted_SLG | 0.286 | -0.060 |
| predicted_SO | 2.000 | 0.276 |
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 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.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 | -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 | - | 20.000 | 5.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 6.000 | 0.2500 | 0.2857 | 0.3000 | 0.2500 | 0.0000 | 0.0500 | 0.0500 | 0.3000 |
| last_10 | 0.20 | 10 | - | 42.000 | 15.000 | 2.000 | 0.000 | 1.000 | 3.000 | 4.000 | 1.000 | 9.000 | 0.3571 | 0.3721 | 0.4762 | 0.3571 | 0.0238 | 0.0714 | 0.0238 | 0.2143 |
| season | 0.60 | 62 | - | 910.000 | 241.000 | 31.000 | 4.000 | 1.000 | 71.000 | 89.000 | 104.000 | 235.000 | 0.2648 | 0.3404 | 0.3110 | 0.2648 | 0.0011 | 0.0780 | 0.1143 | 0.2582 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4130 |
| predicted_3B | 0.0270 |
| predicted_AB | 10.2620 |
| predicted_AVG | 0.2795 |
| predicted_BB | 0.8530 |
| predicted_H | 2.8680 |
| predicted_HBP | 0.0550 |
| predicted_HR | 0.0640 |
| predicted_OBP | 0.3352 |
| predicted_R | 0.9120 |
| predicted_RBI | 0.7470 |
| predicted_SLG | 0.3437 |
| predicted_SO | 2.6350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1310 | 0.4130 | 0.2556 | model_form_blend |
| predicted_3B | 0.0170 | 0.0270 | 0.0214 | model_form_blend |
| predicted_AB | 4.3500 | 10.2620 | 6.9618 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2795 | 0.2619 | model_form_blend |
| predicted_BB | 0.4410 | 0.8530 | 0.6230 | model_form_blend |
| predicted_H | 1.0800 | 2.8680 | 1.8699 | model_form_blend |
| predicted_HBP | - | 0.0550 | 0.0550 | form_only |
| predicted_HR | 0.0900 | 0.0640 | 0.0785 | model_form_blend |
| predicted_OBP | 0.3270 | 0.3352 | 0.3306 | model_form_blend |
| predicted_R | 0.3770 | 0.9120 | 0.6134 | model_form_blend |
| predicted_RBI | 0.3700 | 0.7470 | 0.5366 | model_form_blend |
| predicted_SLG | 0.3740 | 0.3437 | 0.3606 | model_form_blend |
| predicted_SO | 0.9960 | 2.6350 | 1.7201 | 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 | 236 |
| 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 | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.265 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 1 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| 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 | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | 20260607_NYM@SD |
| game_type | full |
| mlbID | 665487 |
| playerID | 665487 |
| playerName | Fernando Tatis Jr. |
| pos | RF |
| started | True |
| startingPosition | 2B |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.9 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.304 |
| sl_xwoba | 0.349 |
| sl_xba | 0.283 |
| sl_xslg | 0.415 |
| sl_sweet_spot_percent | 33.2 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 51.1 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 2.9 |
| sl_whiff_percent | 29.6 |
| 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.097 | 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 | 3.910 | 4.000 | 6.000 | Hitting_AB | 3.624 | 4.000 | 0.376 | 0.000 |
| predicted_AVG | 0.207 | 0.000 | 0.167 | Hitting_AVG | 0.173 | 0.000 | -0.173 | 0.000 |
| predicted_BB | 0.478 | 0.000 | 1.000 | Hitting_BB | 0.478 | 0.000 | -0.478 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 0.810 | 0.000 | 1.000 | Hitting_H | 0.628 | 0.000 | -0.628 | 0.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.181 | 0.000 | -0.181 | 0.000 |
| predicted_OBP | 0.253 | 0.000 | 0.286 | Hitting_OBP | 0.264 | 0.000 | -0.264 | 0.000 |
| predicted_R | 0.531 | 0.000 | 1.000 | Hitting_R | 0.531 | 0.000 | -0.531 | 0.000 |
| predicted_RBI | 0.480 | 0.000 | 1.000 | Hitting_RBI | 0.549 | 0.000 | -0.549 | 0.000 |
| predicted_SLG | 0.360 | 0.000 | 0.167 | Hitting_SLG | 0.350 | 0.000 | -0.350 | 0.000 |
| predicted_SO | 0.973 | 2.000 | 2.000 | Hitting_SO | 0.973 | 1.000 | 1.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 | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.9730 -> 2.0000 (boost 1.0270, worse) |
| Biggest Deboost | predicted_H: 0.8100 -> 0.0000 (deboost -0.8100, 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 | 10 | 7 | 3 | 6 | 4 | predicted_AB: 3.9100 -> 6.3100 (boost 2.4000, better) | predicted_AVG: 0.2070 -> 0.1892 (deboost -0.0178, 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.2409 -> 0.2534 (boost 0.0125, better) | predicted_AVG: 0.1892 -> 0.1810 (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 | 7 | 3 | 4 | 2 | 5 | predicted_BB: 0.6122 -> 1.0000 (boost 0.3878, better) | predicted_AB: 6.3100 -> 6.0000 (deboost -0.3100, worse) | AB rounded to 6 (raw=6.31), rates preserved: AVG=0.181 HR/AB=0.047 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.077) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7470 -> 1.0000 (boost 0.2530, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2534 -> 0.2860 (boost 0.0326, better) | predicted_SLG: 0.3440 -> 0.1670 (deboost -0.1770, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.3440 (boost 0.1770, better) | predicted_OBP: 0.2860 -> 0.2534 (deboost -0.0326, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "592518",
"player_name": "Manny Machado",
"position": "3B",
"team": "SD",
"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.097,
"predicted_3B": 0.0,
"predicted_AB": 3.91,
"predicted_AVG": 0.207,
"predicted_BB": 0.478,
"predicted_H": 0.81,
"predicted_HR": 0.16,
"predicted_OBP": 0.253,
"predicted_R": 0.531,
"predicted_RBI": 0.48,
"predicted_SLG": 0.36,
"predicted_SO": 0.973
},
"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.1446,
"predicted_3B": 0.0004,
"predicted_AB": 6.31,
"predicted_AVG": 0.1892,
"predicted_BB": 0.6134,
"predicted_H": 1.1403,
"predicted_HBP": 0.003,
"predicted_HR": 0.2936,
"predicted_OBP": 0.2409,
"predicted_R": 0.7445,
"predicted_RBI": 0.828,
"predicted_SLG": 0.3501,
"predicted_SO": 1.6561
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.097,
"after": 0.1446,
"delta": 0.0476,
"percent_delta": 0.4907,
"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.91,
"after": 6.31,
"delta": 2.4,
"percent_delta": 0.6138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.207,
"after": 0.1892,
"delta": -0.0178,
"percent_delta": -0.086,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.478,
"after": 0.6134,
"delta": 0.1354,
"percent_delta": 0.2833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.1403,
"delta": 0.3303,
"percent_delta": 0.4078,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2936,
"delta": 0.1336,
"percent_delta": 0.835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.253,
"after": 0.2409,
"delta": -0.0121,
"percent_delta": -0.0478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.531,
"after": 0.7445,
"delta": 0.2135,
"percent_delta": 0.4021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.828,
"delta": 0.348,
"percent_delta": 0.725,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.36,
"after": 0.3501,
"delta": -0.0099,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.973,
"after": 1.6561,
"delta": 0.6831,
"percent_delta": 0.7021,
"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_AB",
"before": 3.91,
"after": 6.31,
"delta": 2.4,
"percent_delta": 0.6138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.207,
"after": 0.1892,
"delta": -0.0178,
"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": 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.1446,
"predicted_3B": 0.0004,
"predicted_AB": 6.31,
"predicted_AVG": 0.181,
"predicted_BB": 0.6122,
"predicted_H": 1.1422,
"predicted_HBP": 0.003,
"predicted_HR": 0.2944,
"predicted_OBP": 0.2534,
"predicted_R": 0.747,
"predicted_RBI": 0.8307,
"predicted_SLG": 0.344,
"predicted_SO": 1.6594
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1446,
"after": 0.1446,
"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": 6.31,
"after": 6.31,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1892,
"after": 0.181,
"delta": -0.0082,
"percent_delta": -0.0433,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6134,
"after": 0.6122,
"delta": -0.0012,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1403,
"after": 1.1422,
"delta": 0.0019,
"percent_delta": 0.0017,
"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.2936,
"after": 0.2944,
"delta": 0.0008,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2409,
"after": 0.2534,
"delta": 0.0125,
"percent_delta": 0.0519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7445,
"after": 0.747,
"delta": 0.0025,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.828,
"after": 0.8307,
"delta": 0.0027,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3501,
"after": 0.344,
"delta": -0.0061,
"percent_delta": -0.0174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6561,
"after": 1.6594,
"delta": 0.0033,
"percent_delta": 0.002,
"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.2409,
"after": 0.2534,
"delta": 0.0125,
"percent_delta": 0.0519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.1892,
"after": 0.181,
"delta": -0.0082,
"percent_delta": -0.0433,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.31), rates preserved: AVG=0.181 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1446,
"after": 0.0,
"delta": -0.1446,
"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": 6.31,
"after": 6.0,
"delta": -0.31,
"percent_delta": -0.0491,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6122,
"after": 1.0,
"delta": 0.3878,
"percent_delta": 0.6335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1422,
"after": 1.0,
"delta": -0.1422,
"percent_delta": -0.1245,
"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.2944,
"after": 0.0,
"delta": -0.2944,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8307,
"after": 1.0,
"delta": 0.1693,
"percent_delta": 0.2038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6594,
"after": 2.0,
"delta": 0.3406,
"percent_delta": 0.2053,
"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.6122,
"after": 1.0,
"delta": 0.3878,
"percent_delta": 0.6335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.31,
"after": 6.0,
"delta": -0.31,
"percent_delta": -0.0491,
"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.077)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 6.0,
"after": 6.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": 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": {
"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": 6.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": 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": 6.0,
"after": 6.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.747,
"after": 1.0,
"delta": 0.253,
"percent_delta": 0.3387,
"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": 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_R",
"before": 0.747,
"after": 1.0,
"delta": 0.253,
"percent_delta": 0.3387,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.181,
"after": 0.167,
"delta": -0.014,
"percent_delta": -0.0773,
"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.2534,
"after": 0.286,
"delta": 0.0326,
"percent_delta": 0.1287,
"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.344,
"after": 0.167,
"delta": -0.177,
"percent_delta": -0.5145,
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2534,
"after": 0.286,
"delta": 0.0326,
"percent_delta": 0.1287,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.344,
"after": 0.167,
"delta": -0.177,
"percent_delta": -0.5145,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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.181,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.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.344,
"predicted_SO": 2.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.167,
"after": 0.181,
"delta": 0.014,
"percent_delta": 0.084,
"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.286,
"after": 0.2534,
"delta": -0.0326,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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.167,
"after": 0.344,
"delta": 0.177,
"percent_delta": 1.06,
"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.167,
"after": 0.344,
"delta": 0.177,
"percent_delta": 1.06,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2534,
"delta": -0.0326,
"percent_delta": -0.1138,
"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.097,
"after": 0.0,
"delta": -0.097,
"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.91,
"after": 4.0,
"delta": 0.09,
"percent_delta": 0.023,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.207,
"after": 0.181,
"delta": -0.026,
"percent_delta": -0.1256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.478,
"after": 0.0,
"delta": -0.478,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"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.253,
"after": 0.2534,
"delta": 0.0004,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.531,
"after": 0.0,
"delta": -0.531,
"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.36,
"after": 0.344,
"delta": -0.016,
"percent_delta": -0.0444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.973,
"after": 2.0,
"delta": 1.027,
"percent_delta": 1.0555,
"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.973,
"after": 2.0,
"delta": 1.027,
"percent_delta": 1.0555,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"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.097 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.910 | - |
| predicted_AVG | 0.207 | - |
| predicted_BB | 0.478 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.253 | - |
| predicted_R | 0.531 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.360 | - |
| predicted_SO | 0.973 | - |
Final model 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.048 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.310 | 2.400 |
| predicted_AVG | 0.189 | -0.018 |
| predicted_BB | 0.613 | 0.135 |
| predicted_H | 1.140 | 0.330 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.294 | 0.134 |
| predicted_OBP | 0.241 | -0.012 |
| predicted_R | 0.745 | 0.214 |
| predicted_RBI | 0.828 | 0.348 |
| predicted_SLG | 0.350 | -0.010 |
| predicted_SO | 1.656 | 0.683 |
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.000 | 0.000 |
| predicted_AB | 6.310 | 0.000 |
| predicted_AVG | 0.181 | -0.008 |
| predicted_BB | 0.612 | -0.001 |
| predicted_H | 1.142 | 0.002 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.294 | 0.001 |
| predicted_OBP | 0.253 | 0.013 |
| predicted_R | 0.747 | 0.002 |
| predicted_RBI | 0.831 | 0.003 |
| predicted_SLG | 0.344 | -0.006 |
| predicted_SO | 1.659 | 0.003 |
AB rounded to 6 (raw=6.31), rates preserved: AVG=0.181 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.077)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 6.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 | 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.145 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.310 |
| predicted_AVG | 0.167 | -0.014 |
| predicted_BB | 1.000 | 0.388 |
| predicted_H | 1.000 | -0.142 |
| predicted_HR | 0.000 | -0.294 |
| predicted_OBP | 0.286 | 0.033 |
| predicted_R | 1.000 | 0.253 |
| predicted_RBI | 1.000 | 0.169 |
| predicted_SLG | 0.167 | -0.177 |
| predicted_SO | 2.000 | 0.341 |
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 | -2.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 | 2.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 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 0.000 | 6.000 | 0.1500 | 0.1500 | 0.3000 | 0.1500 | 0.0500 | 0.1000 | 0.0000 | 0.3000 |
| last_10 | 0.20 | 10 | - | 40.000 | 6.000 | 1.000 | 0.000 | 2.000 | 5.000 | 2.000 | 1.000 | 10.000 | 0.1500 | 0.1707 | 0.3250 | 0.1500 | 0.0500 | 0.1250 | 0.0250 | 0.2500 |
| season | 0.60 | 62 | - | 819.000 | 142.000 | 22.000 | 0.000 | 41.000 | 124.000 | 120.000 | 108.000 | 220.000 | 0.1734 | 0.2643 | 0.3504 | 0.1734 | 0.0501 | 0.1514 | 0.1319 | 0.2686 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2050 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.3520 |
| predicted_AVG | 0.1667 |
| predicted_BB | 0.7850 |
| predicted_H | 1.5590 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.4630 |
| predicted_OBP | 0.2255 |
| predicted_R | 1.0150 |
| predicted_RBI | 1.2690 |
| predicted_SLG | 0.3375 |
| predicted_SO | 2.5220 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0970 | 0.2050 | 0.1446 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9100 | 9.3520 | 6.3100 | model_form_blend |
| predicted_AVG | 0.2070 | 0.1667 | 0.1892 | model_form_blend |
| predicted_BB | 0.4780 | 0.7850 | 0.6134 | model_form_blend |
| predicted_H | 0.8100 | 1.5590 | 1.1403 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1600 | 0.4630 | 0.2936 | model_form_blend |
| predicted_OBP | 0.2530 | 0.2255 | 0.2409 | model_form_blend |
| predicted_R | 0.5310 | 1.0150 | 0.7445 | model_form_blend |
| predicted_RBI | 0.4800 | 1.2690 | 0.8280 | model_form_blend |
| predicted_SLG | 0.3600 | 0.3375 | 0.3501 | model_form_blend |
| predicted_SO | 0.9730 | 2.5220 | 1.6561 | 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 | 226 |
| Season rows before report date | 226 |
| Report year | 2026 |
| Profile rows used | 226 |
| 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.173 |
| 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 | 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 |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 592518 |
| playerID | 592518 |
| playerName | Manny Machado |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.3 |
| sl_bb_percent | 10.5 |
| sl_woba | 0.265 |
| sl_xwoba | 0.306 |
| sl_xba | 0.225 |
| sl_xslg | 0.392 |
| sl_sweet_spot_percent | 30.0 |
| sl_barrel_batted_rate | 8.2 |
| sl_hard_hit_percent | 42.9 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 25.3 |
| 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.218 | 2.000 | 0.000 | Hitting_2B | 0.217 | 0.000 | 1.783 | 2.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 | 7.000 | Hitting_AB | 3.881 | 3.000 | 0.119 | 1.000 |
| predicted_AVG | 0.219 | 0.750 | 0.143 | Hitting_AVG | 0.204 | 0.333 | 0.546 | 0.417 |
| predicted_BB | 0.387 | 1.000 | 1.000 | Hitting_BB | 0.385 | 1.000 | 0.615 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_H | 0.920 | 3.000 | 1.000 | Hitting_H | 0.792 | 1.000 | 2.208 | 2.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.084 | 0.000 | -0.084 | 0.000 |
| predicted_OBP | 0.290 | 0.800 | 0.250 | Hitting_OBP | 0.279 | 0.500 | 0.521 | 0.300 |
| predicted_R | 0.498 | 0.000 | 1.000 | Hitting_R | 0.496 | 0.000 | -0.496 | 0.000 |
| predicted_RBI | 0.490 | 0.000 | 1.000 | Hitting_RBI | 0.407 | 0.000 | -0.407 | 0.000 |
| predicted_SLG | 0.376 | 1.250 | 0.143 | Hitting_SLG | 0.325 | 0.333 | 0.925 | 0.917 |
| predicted_SO | 1.080 | 0.000 | 2.000 | Hitting_SO | 1.075 | 1.000 | -1.075 | -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_H: 0.9200 -> 3.0000 (boost 2.0800, 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 | 10 | 8 | 2 | 7 | 3 | predicted_AB: 4.2100 -> 6.7813 (boost 2.5713, better) | predicted_SLG: 0.3760 -> 0.3645 (deboost -0.0115, 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 | 4 | 3 | 3 | 4 | predicted_BB: 0.6694 -> 1.0000 (boost 0.3306, better) | predicted_H: 1.4280 -> 1.0000 (deboost -0.4280, worse) | AB rounded to 7 (raw=6.78), rates preserved: AVG=0.211 HR/AB=0.035 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.111) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7444 -> 1.0000 (boost 0.2556, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3600 -> 0.1430 (deboost -0.2170, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 2 | 4 | 3 | 3 | predicted_2B: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1430 -> 0.3600 (boost 0.2170, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "701538",
"player_name": "Jackson Merrill",
"position": "CF",
"team": "SD",
"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.218,
"predicted_3B": 0.0,
"predicted_AB": 4.21,
"predicted_AVG": 0.219,
"predicted_BB": 0.387,
"predicted_H": 0.92,
"predicted_HR": 0.15,
"predicted_OBP": 0.29,
"predicted_R": 0.498,
"predicted_RBI": 0.49,
"predicted_SLG": 0.376,
"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.2957,
"predicted_3B": 0.0004,
"predicted_AB": 6.7813,
"predicted_AVG": 0.2132,
"predicted_BB": 0.6707,
"predicted_H": 1.4256,
"predicted_HBP": 0.029,
"predicted_HR": 0.2382,
"predicted_OBP": 0.2863,
"predicted_R": 0.742,
"predicted_RBI": 0.8209,
"predicted_SLG": 0.3645,
"predicted_SO": 1.7947
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.218,
"after": 0.2957,
"delta": 0.0777,
"percent_delta": 0.3564,
"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.21,
"after": 6.7813,
"delta": 2.5713,
"percent_delta": 0.6108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.219,
"after": 0.2132,
"delta": -0.0058,
"percent_delta": -0.0265,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.387,
"after": 0.6707,
"delta": 0.2837,
"percent_delta": 0.7331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 1.4256,
"delta": 0.5056,
"percent_delta": 0.5496,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2382,
"delta": 0.0882,
"percent_delta": 0.588,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2863,
"delta": -0.0037,
"percent_delta": -0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.498,
"after": 0.742,
"delta": 0.244,
"percent_delta": 0.49,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.8209,
"delta": 0.3309,
"percent_delta": 0.6753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.376,
"after": 0.3645,
"delta": -0.0115,
"percent_delta": -0.0306,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.08,
"after": 1.7947,
"delta": 0.7147,
"percent_delta": 0.6618,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 6.7813,
"delta": 2.5713,
"percent_delta": 0.6108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.376,
"after": 0.3645,
"delta": -0.0115,
"percent_delta": -0.0306,
"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.2957,
"predicted_3B": 0.0004,
"predicted_AB": 6.7813,
"predicted_AVG": 0.2106,
"predicted_BB": 0.6694,
"predicted_H": 1.428,
"predicted_HBP": 0.029,
"predicted_HR": 0.2388,
"predicted_OBP": 0.2815,
"predicted_R": 0.7444,
"predicted_RBI": 0.8236,
"predicted_SLG": 0.36,
"predicted_SO": 1.7983
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2957,
"after": 0.2957,
"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": 6.7813,
"after": 6.7813,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2132,
"after": 0.2106,
"delta": -0.0026,
"percent_delta": -0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6707,
"after": 0.6694,
"delta": -0.0013,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4256,
"after": 1.428,
"delta": 0.0024,
"percent_delta": 0.0017,
"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.2382,
"after": 0.2388,
"delta": 0.0006,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2863,
"after": 0.2815,
"delta": -0.0048,
"percent_delta": -0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.742,
"after": 0.7444,
"delta": 0.0024,
"percent_delta": 0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8209,
"after": 0.8236,
"delta": 0.0027,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3645,
"after": 0.36,
"delta": -0.0045,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.7947,
"after": 1.7983,
"delta": 0.0036,
"percent_delta": 0.002,
"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 7 (raw=6.78), rates preserved: AVG=0.211 HR/AB=0.035",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2957,
"after": 0.0,
"delta": -0.2957,
"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": 6.7813,
"after": 7.0,
"delta": 0.2187,
"percent_delta": 0.0323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6694,
"after": 1.0,
"delta": 0.3306,
"percent_delta": 0.4939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.428,
"after": 1.0,
"delta": -0.428,
"percent_delta": -0.2997,
"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.2388,
"after": 0.0,
"delta": -0.2388,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8236,
"after": 1.0,
"delta": 0.1764,
"percent_delta": 0.2142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7983,
"after": 2.0,
"delta": 0.2017,
"percent_delta": 0.1122,
"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.6694,
"after": 1.0,
"delta": 0.3306,
"percent_delta": 0.4939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.428,
"after": 1.0,
"delta": -0.428,
"percent_delta": -0.2997,
"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.111)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 7.0,
"after": 7.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": 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": {
"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": 7.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": 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": 7.0,
"after": 7.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.7444,
"after": 1.0,
"delta": 0.2556,
"percent_delta": 0.3434,
"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": 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_R",
"before": 0.7444,
"after": 1.0,
"delta": 0.2556,
"percent_delta": 0.3434,
"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": 7.0,
"predicted_AVG": 0.143,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.143,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2106,
"after": 0.143,
"delta": -0.0676,
"percent_delta": -0.321,
"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.2815,
"after": 0.25,
"delta": -0.0315,
"percent_delta": -0.1119,
"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.36,
"after": 0.143,
"delta": -0.217,
"percent_delta": -0.6028,
"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_SLG",
"before": 0.36,
"after": 0.143,
"delta": -0.217,
"percent_delta": -0.6028,
"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": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 3.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": 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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 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": 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": 2.0,
"after": 0.0,
"delta": -2.0,
"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_2B",
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2106,
"predicted_BB": 1.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2815,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.36,
"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": 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.143,
"after": 0.2106,
"delta": 0.0676,
"percent_delta": 0.4726,
"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": 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.2815,
"delta": 0.0315,
"percent_delta": 0.126,
"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.143,
"after": 0.36,
"delta": 0.217,
"percent_delta": 1.5173,
"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.143,
"after": 0.36,
"delta": 0.217,
"percent_delta": 1.5173,
"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.218,
"after": 2.0,
"delta": 1.782,
"percent_delta": 8.1743,
"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.219,
"after": 0.2106,
"delta": -0.0084,
"percent_delta": -0.0384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.387,
"after": 1.0,
"delta": 0.613,
"percent_delta": 1.584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 3.0,
"delta": 2.08,
"percent_delta": 2.2609,
"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.2815,
"delta": -0.0085,
"percent_delta": -0.0293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.498,
"after": 0.0,
"delta": -0.498,
"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.376,
"after": 0.36,
"delta": -0.016,
"percent_delta": -0.0426,
"direction": "deboost",
"projection_effect": "worse",
"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": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.92,
"after": 3.0,
"delta": 2.08,
"percent_delta": 2.2609,
"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.218 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.210 | - |
| predicted_AVG | 0.219 | - |
| predicted_BB | 0.387 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.290 | - |
| predicted_R | 0.498 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.376 | - |
| 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.296 | 0.078 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.781 | 2.571 |
| predicted_AVG | 0.213 | -0.006 |
| predicted_BB | 0.671 | 0.284 |
| predicted_H | 1.426 | 0.506 |
| predicted_HBP | 0.029 | - |
| predicted_HR | 0.238 | 0.088 |
| predicted_OBP | 0.286 | -0.004 |
| predicted_R | 0.742 | 0.244 |
| predicted_RBI | 0.821 | 0.331 |
| predicted_SLG | 0.364 | -0.012 |
| predicted_SO | 1.795 | 0.715 |
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.296 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.781 | 0.000 |
| predicted_AVG | 0.211 | -0.003 |
| predicted_BB | 0.669 | -0.001 |
| predicted_H | 1.428 | 0.002 |
| predicted_HBP | 0.029 | 0.000 |
| predicted_HR | 0.239 | 0.001 |
| predicted_OBP | 0.281 | -0.005 |
| predicted_R | 0.744 | 0.002 |
| predicted_RBI | 0.824 | 0.003 |
| predicted_SLG | 0.360 | -0.005 |
| predicted_SO | 1.798 | 0.004 |
AB rounded to 7 (raw=6.78), rates preserved: AVG=0.211 HR/AB=0.035
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.111)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 7.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 | 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.296 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.219 |
| predicted_AVG | 0.143 | -0.068 |
| predicted_BB | 1.000 | 0.331 |
| predicted_H | 1.000 | -0.428 |
| predicted_HR | 0.000 | -0.239 |
| predicted_OBP | 0.250 | -0.031 |
| predicted_R | 1.000 | 0.256 |
| predicted_RBI | 1.000 | 0.176 |
| predicted_SLG | 0.143 | -0.217 |
| predicted_SO | 2.000 | 0.202 |
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 | -3.000 |
| BB | 1.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 | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.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 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 2.000 | 5.000 | 0.1667 | 0.2500 | 0.3333 | 0.1667 | 0.0556 | 0.1667 | 0.1111 | 0.2778 |
| last_10 | 0.20 | 10 | - | 37.000 | 9.000 | 1.000 | 0.000 | 2.000 | 5.000 | 3.000 | 4.000 | 9.000 | 0.2432 | 0.3171 | 0.4324 | 0.2432 | 0.0541 | 0.1351 | 0.1081 | 0.2432 |
| season | 0.60 | 60 | - | 877.000 | 179.000 | 49.000 | 0.000 | 19.000 | 92.000 | 112.000 | 87.000 | 243.000 | 0.2041 | 0.2789 | 0.3250 | 0.2041 | 0.0217 | 0.1049 | 0.0992 | 0.2771 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3940 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.0380 |
| predicted_AVG | 0.2058 |
| predicted_BB | 1.0300 |
| predicted_H | 2.0660 |
| predicted_HBP | 0.0290 |
| predicted_HR | 0.3500 |
| predicted_OBP | 0.2817 |
| predicted_R | 1.0510 |
| predicted_RBI | 1.2400 |
| predicted_SLG | 0.3500 |
| predicted_SO | 2.7000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2180 | 0.3940 | 0.2957 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2100 | 10.0380 | 6.7813 | model_form_blend |
| predicted_AVG | 0.2190 | 0.2058 | 0.2132 | model_form_blend |
| predicted_BB | 0.3870 | 1.0300 | 0.6707 | model_form_blend |
| predicted_H | 0.9200 | 2.0660 | 1.4256 | model_form_blend |
| predicted_HBP | - | 0.0290 | 0.0290 | form_only |
| predicted_HR | 0.1500 | 0.3500 | 0.2382 | model_form_blend |
| predicted_OBP | 0.2900 | 0.2817 | 0.2863 | model_form_blend |
| predicted_R | 0.4980 | 1.0510 | 0.7420 | model_form_blend |
| predicted_RBI | 0.4900 | 1.2400 | 0.8209 | model_form_blend |
| predicted_SLG | 0.3760 | 0.3500 | 0.3645 | model_form_blend |
| predicted_SO | 1.0800 | 2.7000 | 1.7947 | 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 | 226 |
| Season rows before report date | 226 |
| Report year | 2026 |
| Profile rows used | 225 |
| 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 | 3 |
| 2B | 2 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.204 |
| 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 | 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 | 20260607_NYM@SD |
| game_type | full |
| mlbID | 701538 |
| playerID | 701538 |
| playerName | Jackson Merrill |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.3 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.27 |
| sl_xwoba | 0.322 |
| sl_xba | 0.243 |
| sl_xslg | 0.433 |
| sl_sweet_spot_percent | 38.6 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 46.4 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 13.9 |
| sl_whiff_percent | 28.4 |
| 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.130 | 1.000 | 0.000 | Hitting_2B | 0.124 | 0.000 | 0.876 | 1.000 |
| predicted_3B | 0.056 | 0.000 | 0.000 | Hitting_3B | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_AB | 3.417 | 5.000 | 5.000 | Hitting_AB | 3.265 | 4.000 | 1.735 | 1.000 |
| predicted_AVG | 0.251 | 0.200 | 0.200 | Hitting_AVG | 0.287 | 0.000 | -0.087 | 0.200 |
| predicted_BB | 0.148 | 0.000 | 0.000 | Hitting_BB | 0.142 | 0.000 | -0.142 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.027 | 0.000 | -0.027 | 0.000 |
| predicted_H | 0.780 | 1.000 | 1.000 | Hitting_H | 0.938 | 0.000 | 0.062 | 1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.177 | 0.000 | -0.177 | 0.000 |
| predicted_OBP | 0.312 | 0.200 | 0.200 | Hitting_OBP | 0.324 | 0.000 | -0.124 | 0.200 |
| predicted_R | 0.398 | 0.000 | 1.000 | Hitting_R | 0.381 | 0.000 | -0.381 | 0.000 |
| predicted_RBI | 0.370 | 0.000 | 1.000 | Hitting_RBI | 0.540 | 0.000 | -0.540 | 0.000 |
| predicted_SLG | 0.411 | 0.400 | 0.200 | Hitting_SLG | 0.520 | 0.000 | -0.120 | 0.400 |
| predicted_SO | 0.815 | 1.000 | 1.000 | Hitting_SO | 0.779 | 2.000 | 0.221 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 12 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.4170 -> 5.0000 (boost 1.5830, better) |
| Biggest Deboost | predicted_R: 0.3980 -> 0.0000 (deboost -0.3980, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.4170 -> 4.8329 (boost 1.4159, 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.3156 -> 0.2942 (deboost -0.0214, 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_RBI: 0.5426 -> 1.0000 (boost 0.4574, better) | predicted_BB: 0.3374 -> 0.0000 (deboost -0.3374, worse) | AB rounded to 5 (raw=4.83), rates preserved: AVG=0.245 HR/AB=0.038 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5797 -> 1.0000 (boost 0.4203, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4261 -> 0.2000 (deboost -0.2261, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 1 | 2 | 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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4261 (boost 0.2261, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664034",
"player_name": "Ty France",
"position": "1B",
"team": "SD",
"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.056,
"predicted_AB": 3.417,
"predicted_AVG": 0.251,
"predicted_BB": 0.148,
"predicted_H": 0.78,
"predicted_HR": 0.12,
"predicted_OBP": 0.312,
"predicted_R": 0.398,
"predicted_RBI": 0.37,
"predicted_SLG": 0.411,
"predicted_SO": 0.815
},
"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.2137,
"predicted_3B": 0.059,
"predicted_AB": 4.8329,
"predicted_AVG": 0.2529,
"predicted_BB": 0.3381,
"predicted_H": 1.1816,
"predicted_HBP": 0.045,
"predicted_HR": 0.1809,
"predicted_OBP": 0.3156,
"predicted_R": 0.5778,
"predicted_RBI": 0.5408,
"predicted_SLG": 0.4233,
"predicted_SO": 1.1801
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.13,
"after": 0.2137,
"delta": 0.0837,
"percent_delta": 0.6438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.056,
"after": 0.059,
"delta": 0.003,
"percent_delta": 0.0536,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.417,
"after": 4.8329,
"delta": 1.4159,
"percent_delta": 0.4144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2529,
"delta": 0.0019,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.148,
"after": 0.3381,
"delta": 0.1901,
"percent_delta": 1.2845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 1.1816,
"delta": 0.4016,
"percent_delta": 0.5149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1809,
"delta": 0.0609,
"percent_delta": 0.5075,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3156,
"delta": 0.0036,
"percent_delta": 0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.398,
"after": 0.5778,
"delta": 0.1798,
"percent_delta": 0.4518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.5408,
"delta": 0.1708,
"percent_delta": 0.4616,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.411,
"after": 0.4233,
"delta": 0.0123,
"percent_delta": 0.0299,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.815,
"after": 1.1801,
"delta": 0.3651,
"percent_delta": 0.448,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.417,
"after": 4.8329,
"delta": 1.4159,
"percent_delta": 0.4144,
"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.2137,
"predicted_3B": 0.059,
"predicted_AB": 4.8329,
"predicted_AVG": 0.2449,
"predicted_BB": 0.3374,
"predicted_H": 1.1836,
"predicted_HBP": 0.045,
"predicted_HR": 0.1814,
"predicted_OBP": 0.2942,
"predicted_R": 0.5797,
"predicted_RBI": 0.5426,
"predicted_SLG": 0.4261,
"predicted_SO": 1.1825
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2137,
"after": 0.2137,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.059,
"after": 0.059,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8329,
"after": 4.8329,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2529,
"after": 0.2449,
"delta": -0.008,
"percent_delta": -0.0316,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3381,
"after": 0.3374,
"delta": -0.0007,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1816,
"after": 1.1836,
"delta": 0.002,
"percent_delta": 0.0017,
"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.1809,
"after": 0.1814,
"delta": 0.0005,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3156,
"after": 0.2942,
"delta": -0.0214,
"percent_delta": -0.0678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5778,
"after": 0.5797,
"delta": 0.0019,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5408,
"after": 0.5426,
"delta": 0.0018,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4233,
"after": 0.4261,
"delta": 0.0028,
"percent_delta": 0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.1801,
"after": 1.1825,
"delta": 0.0024,
"percent_delta": 0.002,
"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.3156,
"after": 0.2942,
"delta": -0.0214,
"percent_delta": -0.0678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.83), rates preserved: AVG=0.245 HR/AB=0.038",
"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.2137,
"after": 0.0,
"delta": -0.2137,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.059,
"after": 0.0,
"delta": -0.059,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.8329,
"after": 5.0,
"delta": 0.1671,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3374,
"after": 0.0,
"delta": -0.3374,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1836,
"after": 1.0,
"delta": -0.1836,
"percent_delta": -0.1551,
"direction": "deboost",
"projection_effect": "worse",
"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.1814,
"after": 0.0,
"delta": -0.1814,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5426,
"after": 1.0,
"delta": 0.4574,
"percent_delta": 0.843,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1825,
"after": 1.0,
"delta": -0.1825,
"percent_delta": -0.1543,
"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_RBI",
"before": 0.5426,
"after": 1.0,
"delta": 0.4574,
"percent_delta": 0.843,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3374,
"after": 0.0,
"delta": -0.3374,
"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.5797,
"after": 1.0,
"delta": 0.4203,
"percent_delta": 0.725,
"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.5797,
"after": 1.0,
"delta": 0.4203,
"percent_delta": 0.725,
"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.2449,
"after": 0.2,
"delta": -0.0449,
"percent_delta": -0.1833,
"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.2942,
"after": 0.2,
"delta": -0.0942,
"percent_delta": -0.3202,
"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.4261,
"after": 0.2,
"delta": -0.2261,
"percent_delta": -0.5306,
"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.4261,
"after": 0.2,
"delta": -0.2261,
"percent_delta": -0.5306,
"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": 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": 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_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"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": 5.0,
"predicted_AVG": 0.2449,
"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.2942,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4261,
"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.2,
"after": 0.2449,
"delta": 0.0449,
"percent_delta": 0.2245,
"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.2942,
"delta": 0.0942,
"percent_delta": 0.4709,
"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.4261,
"delta": 0.2261,
"percent_delta": 1.1307,
"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.4261,
"delta": 0.2261,
"percent_delta": 1.1307,
"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.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.056,
"after": 0.0,
"delta": -0.056,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.417,
"after": 5.0,
"delta": 1.583,
"percent_delta": 0.4633,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2449,
"delta": -0.0061,
"percent_delta": -0.0243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.148,
"after": 0.0,
"delta": -0.148,
"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.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.2942,
"delta": -0.0178,
"percent_delta": -0.0571,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.398,
"after": 0.0,
"delta": -0.398,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.411,
"after": 0.4261,
"delta": 0.0151,
"percent_delta": 0.0367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.815,
"after": 1.0,
"delta": 0.185,
"percent_delta": 0.227,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 5,
"deboosted_metrics": 7,
"better_metrics": 4,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.417,
"after": 5.0,
"delta": 1.583,
"percent_delta": 0.4633,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.398,
"after": 0.0,
"delta": -0.398,
"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.056 | - |
| predicted_AB | 3.417 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.148 | - |
| predicted_H | 0.780 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.312 | - |
| predicted_R | 0.398 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.411 | - |
| predicted_SO | 0.815 | - |
Final model 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.214 | 0.084 |
| predicted_3B | 0.059 | 0.003 |
| predicted_AB | 4.833 | 1.416 |
| predicted_AVG | 0.253 | 0.002 |
| predicted_BB | 0.338 | 0.190 |
| predicted_H | 1.182 | 0.402 |
| predicted_HBP | 0.045 | - |
| predicted_HR | 0.181 | 0.061 |
| predicted_OBP | 0.316 | 0.004 |
| predicted_R | 0.578 | 0.180 |
| predicted_RBI | 0.541 | 0.171 |
| predicted_SLG | 0.423 | 0.012 |
| predicted_SO | 1.180 | 0.365 |
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.214 | 0.000 |
| predicted_3B | 0.059 | 0.000 |
| predicted_AB | 4.833 | 0.000 |
| predicted_AVG | 0.245 | -0.008 |
| predicted_BB | 0.337 | -0.001 |
| predicted_H | 1.184 | 0.002 |
| predicted_HBP | 0.045 | 0.000 |
| predicted_HR | 0.181 | 0.001 |
| predicted_OBP | 0.294 | -0.021 |
| predicted_R | 0.580 | 0.002 |
| predicted_RBI | 0.543 | 0.002 |
| predicted_SLG | 0.426 | 0.003 |
| predicted_SO | 1.183 | 0.002 |
AB rounded to 5 (raw=4.83), rates preserved: AVG=0.245 HR/AB=0.038
| 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.214 |
| predicted_3B | 0.000 | -0.059 |
| predicted_AB | 5.000 | 0.167 |
| predicted_AVG | 0.200 | -0.045 |
| predicted_BB | 0.000 | -0.337 |
| predicted_H | 1.000 | -0.184 |
| predicted_HR | 0.000 | -0.181 |
| predicted_OBP | 0.200 | -0.094 |
| predicted_R | 1.000 | 0.420 |
| predicted_RBI | 1.000 | 0.457 |
| predicted_SLG | 0.200 | -0.226 |
| predicted_SO | 1.000 | -0.183 |
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 | 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 | 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 | - | 17.000 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 5.000 | 0.1765 | 0.3000 | 0.2353 | 0.1765 | 0.0000 | 0.0000 | 0.1765 | 0.2941 |
| last_10 | 0.20 | 10 | - | 29.000 | 7.000 | 2.000 | 0.000 | 1.000 | 2.000 | 4.000 | 4.000 | 7.000 | 0.2414 | 0.3333 | 0.4138 | 0.2414 | 0.0345 | 0.0690 | 0.1379 | 0.2414 |
| season | 0.60 | 39 | - | 369.000 | 106.000 | 14.000 | 6.000 | 20.000 | 61.000 | 43.000 | 16.000 | 88.000 | 0.2873 | 0.3239 | 0.5203 | 0.2873 | 0.0542 | 0.1653 | 0.0434 | 0.2385 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3250 |
| predicted_3B | 0.0630 |
| predicted_AB | 6.7170 |
| predicted_AVG | 0.2555 |
| predicted_BB | 0.5910 |
| predicted_H | 1.7160 |
| predicted_HBP | 0.0450 |
| predicted_HR | 0.2620 |
| predicted_OBP | 0.3205 |
| predicted_R | 0.8170 |
| predicted_RBI | 0.7680 |
| predicted_SLG | 0.4396 |
| predicted_SO | 1.6660 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1300 | 0.3250 | 0.2137 | model_form_blend |
| predicted_3B | 0.0560 | 0.0630 | 0.0590 | model_form_blend |
| predicted_AB | 3.4170 | 6.7170 | 4.8329 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2555 | 0.2529 | model_form_blend |
| predicted_BB | 0.1480 | 0.5910 | 0.3381 | model_form_blend |
| predicted_H | 0.7800 | 1.7160 | 1.1816 | model_form_blend |
| predicted_HBP | - | 0.0450 | 0.0450 | form_only |
| predicted_HR | 0.1200 | 0.2620 | 0.1809 | model_form_blend |
| predicted_OBP | 0.3120 | 0.3205 | 0.3156 | model_form_blend |
| predicted_R | 0.3980 | 0.8170 | 0.5778 | model_form_blend |
| predicted_RBI | 0.3700 | 0.7680 | 0.5408 | model_form_blend |
| predicted_SLG | 0.4110 | 0.4396 | 0.4233 | model_form_blend |
| predicted_SO | 0.8150 | 1.6660 | 1.1801 | 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 | 108 |
| 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 | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.287 |
| 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 | 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 | 1B |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 664034 |
| playerID | 664034 |
| playerName | Ty France |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.5 |
| sl_bb_percent | 5.3 |
| sl_woba | 0.348 |
| sl_xwoba | 0.323 |
| sl_xba | 0.25 |
| sl_xslg | 0.45 |
| sl_sweet_spot_percent | 32.6 |
| sl_barrel_batted_rate | 12.1 |
| sl_hard_hit_percent | 48.9 |
| sl_exit_velocity_avg | 91.3 |
| sl_launch_angle_avg | 7.5 |
| sl_whiff_percent | 29.5 |
| sl_swing_percent | 54.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.055 | 0.000 | 0.000 | Hitting_2B | 0.055 | 0.000 | -0.055 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.730 | 3.000 | 6.000 | Hitting_AB | 3.693 | 4.000 | -0.693 | -1.000 |
| predicted_AVG | 0.215 | 0.000 | 0.167 | Hitting_AVG | 0.247 | 0.250 | -0.247 | -0.250 |
| predicted_BB | 0.385 | 1.000 | 1.000 | Hitting_BB | 0.385 | 0.000 | 0.615 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.005 | 0.000 | -0.005 | 0.000 |
| predicted_H | 0.800 | 0.000 | 1.000 | Hitting_H | 0.913 | 1.000 | -0.913 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.138 | 0.000 | -0.138 | 0.000 |
| predicted_OBP | 0.278 | 0.250 | 0.286 | Hitting_OBP | 0.317 | 0.250 | -0.067 | 0.000 |
| predicted_R | 0.450 | 0.000 | 1.000 | Hitting_R | 0.450 | 0.000 | -0.450 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.482 | 0.000 | -0.482 | 0.000 |
| predicted_SLG | 0.327 | 0.000 | 0.167 | Hitting_SLG | 0.374 | 0.250 | -0.374 | -0.250 |
| predicted_SO | 0.716 | 1.000 | 1.000 | Hitting_SO | 0.716 | 1.000 | 0.284 | 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 | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_BB: 0.3850 -> 1.0000 (boost 0.6150, better) |
| 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 | 9 | 7 | 2 | 6 | 3 | predicted_AB: 3.7300 -> 6.0168 (boost 2.2868, better) | predicted_SLG: 0.3270 -> 0.3078 (deboost -0.0192, 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.3078 -> 0.2959 (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 | 2 | 5 | 3 | 4 | predicted_BB: 0.6019 -> 1.0000 (boost 0.3981, better) | predicted_SO: 1.3645 -> 1.0000 (deboost -0.3645, better) | AB rounded to 6 (raw=6.02), rates preserved: AVG=0.197 HR/AB=0.029 |
| 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 | 1 | 0 | 1 | 0 | predicted_R: 0.6172 -> 1.0000 (boost 0.3828, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2700 -> 0.2860 (boost 0.0160, better) | predicted_SLG: 0.2959 -> 0.1670 (deboost -0.1289, 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_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.2959 (boost 0.1289, better) | predicted_OBP: 0.2860 -> 0.2700 (deboost -0.0160, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "593428",
"player_name": "Xander Bogaerts",
"position": "SS",
"team": "SD",
"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.055,
"predicted_3B": 0.0,
"predicted_AB": 3.73,
"predicted_AVG": 0.215,
"predicted_BB": 0.385,
"predicted_H": 0.8,
"predicted_HR": 0.11,
"predicted_OBP": 0.278,
"predicted_R": 0.45,
"predicted_RBI": 0.41,
"predicted_SLG": 0.327,
"predicted_SO": 0.716
},
"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.0709,
"predicted_3B": 0.0004,
"predicted_AB": 6.0168,
"predicted_AVG": 0.2028,
"predicted_BB": 0.6031,
"predicted_H": 1.1833,
"predicted_HBP": 0.169,
"predicted_HR": 0.1739,
"predicted_OBP": 0.275,
"predicted_R": 0.6152,
"predicted_RBI": 0.6602,
"predicted_SLG": 0.3078,
"predicted_SO": 1.3618
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.055,
"after": 0.0709,
"delta": 0.0159,
"percent_delta": 0.2891,
"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.73,
"after": 6.0168,
"delta": 2.2868,
"percent_delta": 0.6131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.215,
"after": 0.2028,
"delta": -0.0122,
"percent_delta": -0.0567,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.385,
"after": 0.6031,
"delta": 0.2181,
"percent_delta": 0.5665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 1.1833,
"delta": 0.3833,
"percent_delta": 0.4791,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1739,
"delta": 0.0639,
"percent_delta": 0.5809,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.275,
"delta": -0.003,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.45,
"after": 0.6152,
"delta": 0.1652,
"percent_delta": 0.3671,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6602,
"delta": 0.2502,
"percent_delta": 0.6102,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3078,
"delta": -0.0192,
"percent_delta": -0.0587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.716,
"after": 1.3618,
"delta": 0.6458,
"percent_delta": 0.902,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 7,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.73,
"after": 6.0168,
"delta": 2.2868,
"percent_delta": 0.6131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3078,
"delta": -0.0192,
"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": 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.0709,
"predicted_3B": 0.0004,
"predicted_AB": 6.0168,
"predicted_AVG": 0.197,
"predicted_BB": 0.6019,
"predicted_H": 1.1853,
"predicted_HBP": 0.169,
"predicted_HR": 0.1744,
"predicted_OBP": 0.27,
"predicted_R": 0.6172,
"predicted_RBI": 0.6624,
"predicted_SLG": 0.2959,
"predicted_SO": 1.3645
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0709,
"after": 0.0709,
"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": 6.0168,
"after": 6.0168,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2028,
"after": 0.197,
"delta": -0.0058,
"percent_delta": -0.0286,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6031,
"after": 0.6019,
"delta": -0.0012,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1833,
"after": 1.1853,
"delta": 0.002,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.169,
"after": 0.169,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1739,
"after": 0.1744,
"delta": 0.0005,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.275,
"after": 0.27,
"delta": -0.005,
"percent_delta": -0.0182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6152,
"after": 0.6172,
"delta": 0.002,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6602,
"after": 0.6624,
"delta": 0.0022,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3078,
"after": 0.2959,
"delta": -0.0119,
"percent_delta": -0.0387,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3618,
"after": 1.3645,
"delta": 0.0027,
"percent_delta": 0.002,
"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.3078,
"after": 0.2959,
"delta": -0.0119,
"percent_delta": -0.0387,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.02), rates preserved: AVG=0.197 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.0709,
"after": 0.0,
"delta": -0.0709,
"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": 6.0168,
"after": 6.0,
"delta": -0.0168,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6019,
"after": 1.0,
"delta": 0.3981,
"percent_delta": 0.6614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1853,
"after": 1.0,
"delta": -0.1853,
"percent_delta": -0.1563,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.169,
"after": 0.0,
"delta": -0.169,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1744,
"after": 0.0,
"delta": -0.1744,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6624,
"after": 1.0,
"delta": 0.3376,
"percent_delta": 0.5097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3645,
"after": 1.0,
"delta": -0.3645,
"percent_delta": -0.2671,
"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_BB",
"before": 0.6019,
"after": 1.0,
"delta": 0.3981,
"percent_delta": 0.6614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3645,
"after": 1.0,
"delta": -0.3645,
"percent_delta": -0.2671,
"direction": "deboost",
"projection_effect": "better",
"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": 6.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": 6.0,
"after": 6.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.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": 6.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": 6.0,
"after": 6.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.6172,
"after": 1.0,
"delta": 0.3828,
"percent_delta": 0.6202,
"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.6172,
"after": 1.0,
"delta": 0.3828,
"percent_delta": 0.6202,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.197,
"after": 0.167,
"delta": -0.03,
"percent_delta": -0.1523,
"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.27,
"after": 0.286,
"delta": 0.016,
"percent_delta": 0.0593,
"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.2959,
"after": 0.167,
"delta": -0.1289,
"percent_delta": -0.4356,
"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.27,
"after": 0.286,
"delta": 0.016,
"percent_delta": 0.0593,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2959,
"after": 0.167,
"delta": -0.1289,
"percent_delta": -0.4356,
"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": 6.0,
"after": 3.0,
"delta": -3.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": 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_AB",
"before": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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.197,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.27,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2959,
"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.167,
"after": 0.197,
"delta": 0.03,
"percent_delta": 0.1796,
"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.286,
"after": 0.27,
"delta": -0.016,
"percent_delta": -0.0559,
"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.167,
"after": 0.2959,
"delta": 0.1289,
"percent_delta": 0.7716,
"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.167,
"after": 0.2959,
"delta": 0.1289,
"percent_delta": 0.7716,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.27,
"delta": -0.016,
"percent_delta": -0.0559,
"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.055,
"after": 0.0,
"delta": -0.055,
"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.73,
"after": 3.0,
"delta": -0.73,
"percent_delta": -0.1957,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.215,
"after": 0.197,
"delta": -0.018,
"percent_delta": -0.0837,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.385,
"after": 1.0,
"delta": 0.615,
"percent_delta": 1.5974,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.27,
"delta": -0.008,
"percent_delta": -0.0288,
"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.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.2959,
"delta": -0.0311,
"percent_delta": -0.0951,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.716,
"after": 1.0,
"delta": 0.284,
"percent_delta": 0.3966,
"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_BB",
"before": 0.385,
"after": 1.0,
"delta": 0.615,
"percent_delta": 1.5974,
"direction": "boost",
"projection_effect": "better",
"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.055 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.730 | - |
| predicted_AVG | 0.215 | - |
| predicted_BB | 0.385 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.278 | - |
| predicted_R | 0.450 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.327 | - |
| predicted_SO | 0.716 | - |
Final model 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.071 | 0.016 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.017 | 2.287 |
| predicted_AVG | 0.203 | -0.012 |
| predicted_BB | 0.603 | 0.218 |
| predicted_H | 1.183 | 0.383 |
| predicted_HBP | 0.169 | - |
| predicted_HR | 0.174 | 0.064 |
| predicted_OBP | 0.275 | -0.003 |
| predicted_R | 0.615 | 0.165 |
| predicted_RBI | 0.660 | 0.250 |
| predicted_SLG | 0.308 | -0.019 |
| predicted_SO | 1.362 | 0.646 |
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.071 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.017 | 0.000 |
| predicted_AVG | 0.197 | -0.006 |
| predicted_BB | 0.602 | -0.001 |
| predicted_H | 1.185 | 0.002 |
| predicted_HBP | 0.169 | 0.000 |
| predicted_HR | 0.174 | 0.001 |
| predicted_OBP | 0.270 | -0.005 |
| predicted_R | 0.617 | 0.002 |
| predicted_RBI | 0.662 | 0.002 |
| predicted_SLG | 0.296 | -0.012 |
| predicted_SO | 1.365 | 0.003 |
AB rounded to 6 (raw=6.02), rates preserved: AVG=0.197 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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 | 6.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.071 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.017 |
| predicted_AVG | 0.167 | -0.030 |
| predicted_BB | 1.000 | 0.398 |
| predicted_H | 1.000 | -0.185 |
| predicted_HR | 0.000 | -0.174 |
| predicted_OBP | 0.286 | 0.016 |
| predicted_R | 1.000 | 0.383 |
| predicted_RBI | 1.000 | 0.338 |
| predicted_SLG | 0.167 | -0.129 |
| predicted_SO | 1.000 | -0.365 |
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 | -3.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 | -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 | - | 16.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 5.000 | 0.0625 | 0.1667 | 0.0625 | 0.0625 | 0.0000 | 0.0625 | 0.0625 | 0.3125 |
| last_10 | 0.20 | 10 | - | 33.000 | 4.000 | 0.000 | 0.000 | 1.000 | 3.000 | 3.000 | 4.000 | 11.000 | 0.1212 | 0.2308 | 0.2121 | 0.1212 | 0.0303 | 0.0909 | 0.1212 | 0.3333 |
| season | 0.60 | 62 | - | 805.000 | 199.000 | 12.000 | 0.000 | 30.000 | 105.000 | 98.000 | 84.000 | 156.000 | 0.2472 | 0.3173 | 0.3739 | 0.2472 | 0.0373 | 0.1304 | 0.1043 | 0.1938 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0910 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.9210 |
| predicted_AVG | 0.1872 |
| predicted_BB | 0.8800 |
| predicted_H | 1.6700 |
| predicted_HBP | 0.1690 |
| predicted_HR | 0.2550 |
| predicted_OBP | 0.2713 |
| predicted_R | 0.8250 |
| predicted_RBI | 0.9780 |
| predicted_SLG | 0.2834 |
| predicted_SO | 2.1820 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0550 | 0.0910 | 0.0709 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7300 | 8.9210 | 6.0168 | model_form_blend |
| predicted_AVG | 0.2150 | 0.1872 | 0.2028 | model_form_blend |
| predicted_BB | 0.3850 | 0.8800 | 0.6031 | model_form_blend |
| predicted_H | 0.8000 | 1.6700 | 1.1833 | model_form_blend |
| predicted_HBP | - | 0.1690 | 0.1690 | form_only |
| predicted_HR | 0.1100 | 0.2550 | 0.1739 | model_form_blend |
| predicted_OBP | 0.2780 | 0.2713 | 0.2750 | model_form_blend |
| predicted_R | 0.4500 | 0.8250 | 0.6152 | model_form_blend |
| predicted_RBI | 0.4100 | 0.9780 | 0.6602 | model_form_blend |
| predicted_SLG | 0.3270 | 0.2834 | 0.3078 | model_form_blend |
| predicted_SO | 0.7160 | 2.1820 | 1.3618 | 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 | 218 |
| 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.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 | 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 |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 593428 |
| playerID | 593428 |
| playerName | Xander Bogaerts |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.6 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.292 |
| sl_xwoba | 0.319 |
| sl_xba | 0.251 |
| sl_xslg | 0.397 |
| sl_sweet_spot_percent | 29.9 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 36.7 |
| sl_exit_velocity_avg | 88.0 |
| sl_launch_angle_avg | 8.2 |
| sl_whiff_percent | 22.6 |
| 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.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.000 | 4.000 | 3.000 | Hitting_AB | 2.400 | 4.000 | 1.600 | 0.000 |
| predicted_AVG | 0.246 | 0.250 | 0.333 | Hitting_AVG | 0.083 | 0.000 | 0.167 | 0.250 |
| 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.580 | 1.000 | 1.000 | Hitting_H | 0.200 | 0.000 | 0.800 | 1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.265 | 0.250 | 0.333 | Hitting_OBP | 0.083 | 0.000 | 0.167 | 0.250 |
| predicted_R | 0.000 | 0.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_RBI | 0.290 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.332 | 0.250 | 0.333 | Hitting_SLG | 0.083 | 0.000 | 0.167 | 0.250 |
| predicted_SO | 1.500 | 0.000 | 1.000 | Hitting_SO | 1.200 | 1.000 | -1.200 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_SO: 1.5000 -> 0.0000 (deboost -1.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 | 4 | 2 | 2 | 3 | 1 | predicted_AB: 3.0000 -> 3.1492 (boost 0.1492, better) | predicted_SO: 1.5000 -> 1.4004 (deboost -0.0996, 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.2608 -> 0.2083 (deboost -0.0525, 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.6179 -> 1.0000 (boost 0.3821, better) | predicted_SO: 1.4032 -> 1.0000 (deboost -0.4032, better) | AB rounded to 3 (raw=3.15), rates preserved: AVG=0.196 HR/AB=0.026 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.0803 -> 0.0000 (deboost -0.0803, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1962 -> 0.3330 (boost 0.1368, 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_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 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1962 (deboost -0.1368, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687749",
"player_name": "Jase Bowen",
"position": "RF",
"team": "SD",
"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.0,
"predicted_AVG": 0.246,
"predicted_BB": 0.0,
"predicted_H": 0.58,
"predicted_HR": 0.08,
"predicted_OBP": 0.265,
"predicted_R": 0.0,
"predicted_RBI": 0.29,
"predicted_SLG": 0.332,
"predicted_SO": 1.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.0304,
"predicted_3B": 0.0024,
"predicted_AB": 3.1492,
"predicted_AVG": 0.2355,
"predicted_BB": 0.048,
"predicted_H": 0.6169,
"predicted_HBP": 0.024,
"predicted_HR": 0.0819,
"predicted_OBP": 0.2608,
"predicted_R": 0.08,
"predicted_RBI": 0.3018,
"predicted_SLG": 0.328,
"predicted_SO": 1.4004
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0304,
"delta": 0.0304,
"percent_delta": null,
"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.0,
"after": 3.1492,
"delta": 0.1492,
"percent_delta": 0.0497,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2355,
"delta": -0.0105,
"percent_delta": -0.0427,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.048,
"delta": 0.048,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 0.6169,
"delta": 0.0369,
"percent_delta": 0.0636,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0819,
"delta": 0.0019,
"percent_delta": 0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.265,
"after": 0.2608,
"delta": -0.0042,
"percent_delta": -0.0158,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.08,
"delta": 0.08,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.3018,
"delta": 0.0118,
"percent_delta": 0.0407,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.332,
"after": 0.328,
"delta": -0.004,
"percent_delta": -0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.5,
"after": 1.4004,
"delta": -0.0996,
"percent_delta": -0.0664,
"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_AB",
"before": 3.0,
"after": 3.1492,
"delta": 0.1492,
"percent_delta": 0.0497,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5,
"after": 1.4004,
"delta": -0.0996,
"percent_delta": -0.0664,
"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": 4,
"last_10": 4,
"season": 4
}
},
{
"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.0304,
"predicted_3B": 0.0024,
"predicted_AB": 3.1492,
"predicted_AVG": 0.1962,
"predicted_BB": 0.0479,
"predicted_H": 0.6179,
"predicted_HBP": 0.024,
"predicted_HR": 0.0821,
"predicted_OBP": 0.2083,
"predicted_R": 0.0803,
"predicted_RBI": 0.3028,
"predicted_SLG": 0.2856,
"predicted_SO": 1.4032
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0304,
"after": 0.0304,
"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.1492,
"after": 3.1492,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2355,
"after": 0.1962,
"delta": -0.0393,
"percent_delta": -0.1669,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.048,
"after": 0.0479,
"delta": -0.0001,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6169,
"after": 0.6179,
"delta": 0.001,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.024,
"after": 0.024,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0819,
"after": 0.0821,
"delta": 0.0002,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2608,
"after": 0.2083,
"delta": -0.0525,
"percent_delta": -0.2013,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.08,
"after": 0.0803,
"delta": 0.0003,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3018,
"after": 0.3028,
"delta": 0.001,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.328,
"after": 0.2856,
"delta": -0.0424,
"percent_delta": -0.1293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4004,
"after": 1.4032,
"delta": 0.0028,
"percent_delta": 0.002,
"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.2608,
"after": 0.2083,
"delta": -0.0525,
"percent_delta": -0.2013,
"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.196 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.0304,
"after": 0.0,
"delta": -0.0304,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.1492,
"after": 3.0,
"delta": -0.1492,
"percent_delta": -0.0474,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0479,
"after": 0.0,
"delta": -0.0479,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6179,
"after": 1.0,
"delta": 0.3821,
"percent_delta": 0.6184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.024,
"after": 0.0,
"delta": -0.024,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0821,
"after": 0.0,
"delta": -0.0821,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3028,
"after": 0.0,
"delta": -0.3028,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4032,
"after": 1.0,
"delta": -0.4032,
"percent_delta": -0.2873,
"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.6179,
"after": 1.0,
"delta": 0.3821,
"percent_delta": 0.6184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4032,
"after": 1.0,
"delta": -0.4032,
"percent_delta": -0.2873,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.0803,
"after": 0.0,
"delta": -0.0803,
"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.0803,
"after": 0.0,
"delta": -0.0803,
"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.1962,
"after": 0.333,
"delta": 0.1368,
"percent_delta": 0.6972,
"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.2083,
"after": 0.333,
"delta": 0.1247,
"percent_delta": 0.5987,
"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.2856,
"after": 0.333,
"delta": 0.0474,
"percent_delta": 0.166,
"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.1962,
"after": 0.333,
"delta": 0.1368,
"percent_delta": 0.6972,
"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": 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_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.1962,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2083,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2856,
"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.1962,
"delta": -0.1368,
"percent_delta": -0.4107,
"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.2083,
"delta": -0.1247,
"percent_delta": -0.3746,
"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.2856,
"delta": -0.0474,
"percent_delta": -0.1422,
"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.1962,
"delta": -0.1368,
"percent_delta": -0.4107,
"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.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.1962,
"delta": -0.0498,
"percent_delta": -0.2024,
"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": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"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.265,
"after": 0.2083,
"delta": -0.0567,
"percent_delta": -0.214,
"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.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.332,
"after": 0.2856,
"delta": -0.0464,
"percent_delta": -0.1398,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5,
"after": 0.0,
"delta": -1.5,
"percent_delta": -1.0,
"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.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.5,
"after": 0.0,
"delta": -1.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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.000 | - |
| predicted_AVG | 0.246 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.580 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.265 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.290 | - |
| predicted_SLG | 0.332 | - |
| predicted_SO | 1.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.030 | 0.030 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.149 | 0.149 |
| predicted_AVG | 0.235 | -0.011 |
| predicted_BB | 0.048 | 0.048 |
| predicted_H | 0.617 | 0.037 |
| predicted_HBP | 0.024 | - |
| predicted_HR | 0.082 | 0.002 |
| predicted_OBP | 0.261 | -0.004 |
| predicted_R | 0.080 | 0.080 |
| predicted_RBI | 0.302 | 0.012 |
| predicted_SLG | 0.328 | -0.004 |
| predicted_SO | 1.400 | -0.100 |
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.030 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.149 | 0.000 |
| predicted_AVG | 0.196 | -0.039 |
| predicted_BB | 0.048 | -0.000 |
| predicted_H | 0.618 | 0.001 |
| predicted_HBP | 0.024 | 0.000 |
| predicted_HR | 0.082 | 0.000 |
| predicted_OBP | 0.208 | -0.052 |
| predicted_R | 0.080 | 0.000 |
| predicted_RBI | 0.303 | 0.001 |
| predicted_SLG | 0.286 | -0.042 |
| predicted_SO | 1.403 | 0.003 |
AB rounded to 3 (raw=3.15), rates preserved: AVG=0.196 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.030 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.149 |
| predicted_AVG | 0.333 | 0.137 |
| predicted_BB | 0.000 | -0.048 |
| predicted_H | 1.000 | 0.382 |
| predicted_HR | 0.000 | -0.082 |
| predicted_OBP | 0.333 | 0.125 |
| predicted_R | 0.000 | -0.080 |
| predicted_RBI | 0.000 | -0.303 |
| predicted_SLG | 0.333 | 0.047 |
| 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 | 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 | 4 | - | 12.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 6.000 | 0.0833 | 0.0833 | 0.0833 | 0.0833 | 0.0000 | 0.0000 | 0.0000 | 0.5000 |
| last_10 | 0.20 | 4 | - | 12.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 6.000 | 0.0833 | 0.0833 | 0.0833 | 0.0833 | 0.0000 | 0.0000 | 0.0000 | 0.5000 |
| season | 0.60 | 4 | - | 12.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 6.000 | 0.0833 | 0.0833 | 0.0833 | 0.0833 | 0.0000 | 0.0000 | 0.0000 | 0.5000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1260 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.6190 |
| predicted_AVG | 0.2025 |
| predicted_BB | 0.1990 |
| predicted_H | 0.7330 |
| predicted_HBP | 0.0240 |
| predicted_HR | 0.0880 |
| predicted_OBP | 0.2476 |
| predicted_R | 0.3320 |
| predicted_RBI | 0.3390 |
| predicted_SLG | 0.3156 |
| predicted_SO | 1.0870 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1260 | 0.0304 | model_form_blend |
| predicted_3B | 0.0000 | 0.0100 | 0.0024 | model_form_blend |
| predicted_AB | 3.0000 | 3.6190 | 3.1492 | model_form_blend |
| predicted_AVG | 0.2460 | 0.2025 | 0.2355 | model_form_blend |
| predicted_BB | 0.0000 | 0.1990 | 0.0480 | model_form_blend |
| predicted_H | 0.5800 | 0.7330 | 0.6169 | model_form_blend |
| predicted_HBP | - | 0.0240 | 0.0240 | form_only |
| predicted_HR | 0.0800 | 0.0880 | 0.0819 | model_form_blend |
| predicted_OBP | 0.2650 | 0.2476 | 0.2608 | model_form_blend |
| predicted_R | 0.0000 | 0.3320 | 0.0800 | model_form_blend |
| predicted_RBI | 0.2900 | 0.3390 | 0.3018 | model_form_blend |
| predicted_SLG | 0.3320 | 0.3156 | 0.3280 | model_form_blend |
| predicted_SO | 1.5000 | 1.0870 | 1.4004 | 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 | 4 |
| 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.083 |
| 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 | 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 | RF |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 687749 |
| playerID | 687749 |
| playerName | Jase Bowen |
| pos | CF |
| started | True |
| startingPosition | RF |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 50.0 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.075 |
| sl_xwoba | 0.152 |
| sl_xba | 0.129 |
| sl_xslg | 0.23 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 16.7 |
| sl_hard_hit_percent | 16.7 |
| sl_exit_velocity_avg | 85.7 |
| sl_launch_angle_avg | 19.2 |
| sl_whiff_percent | 50.0 |
| sl_swing_percent | 47.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.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 | 2.000 | 2.000 | 2.000 | 2.000 |
| predicted_AVG | 0.270 | 0.500 | 0.333 | Hitting_AVG | 0.250 | 0.500 | 0.250 | 0.000 |
| predicted_BB | 1.250 | 0.000 | 1.000 | Hitting_BB | 1.000 | 2.000 | -1.000 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.200 | 2.000 | 1.000 | Hitting_H | 0.500 | 1.000 | 1.500 | 1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.316 | 0.500 | 0.500 | Hitting_OBP | 0.500 | 0.750 | 0.000 | -0.250 |
| predicted_R | 1.250 | 0.000 | 1.000 | Hitting_R | 1.000 | 2.000 | -1.000 | -2.000 |
| predicted_RBI | 0.120 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.371 | 0.500 | 0.333 | Hitting_SLG | 0.250 | 0.500 | 0.250 | 0.000 |
| predicted_SO | 0.625 | 0.000 | 1.000 | Hitting_SO | 0.500 | 0.000 | -0.500 | 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_H: 0.2000 -> 2.0000 (boost 1.8000, better) |
| Biggest Deboost | predicted_BB: 1.2500 -> 0.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 | 6 | 4 | 2 | 4 | 2 | predicted_AB: 2.5000 -> 2.7176 (boost 0.2176, better) | predicted_BB: 1.2500 -> 1.1005 (deboost -0.1495, 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.3219 -> 0.3776 (boost 0.0557, better) | predicted_SLG: 0.3733 -> 0.1879 (deboost -0.1854, 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.6628 -> 1.0000 (boost 0.3372, worse) | predicted_H: 0.3427 -> 0.0000 (deboost -0.3427, worse) | AB rounded to 3 (raw=2.72), rates preserved: AVG=0.126 HR/AB=0.016 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 1.1355 -> 1.0000 (deboost -0.1355, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1261 -> 0.3330 (boost 0.2069, better) | - | 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_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.1261 (deboost -0.2069, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669392",
"player_name": "Samad Taylor",
"position": "LF",
"team": "SD",
"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.27,
"predicted_BB": 1.25,
"predicted_H": 0.2,
"predicted_HR": 0.03,
"predicted_OBP": 0.316,
"predicted_R": 1.25,
"predicted_RBI": 0.12,
"predicted_SLG": 0.371,
"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.0299,
"predicted_3B": 0.0023,
"predicted_AB": 2.7176,
"predicted_AVG": 0.2659,
"predicted_BB": 1.1005,
"predicted_H": 0.3421,
"predicted_HBP": 0.027,
"predicted_HR": 0.0444,
"predicted_OBP": 0.3219,
"predicted_R": 1.1318,
"predicted_RBI": 0.1755,
"predicted_SLG": 0.3733,
"predicted_SO": 0.6615
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0299,
"delta": 0.0299,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0023,
"delta": 0.0023,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.7176,
"delta": 0.2176,
"percent_delta": 0.087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.2659,
"delta": -0.0041,
"percent_delta": -0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.25,
"after": 1.1005,
"delta": -0.1495,
"percent_delta": -0.1196,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.2,
"after": 0.3421,
"delta": 0.1421,
"percent_delta": 0.7105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0444,
"delta": 0.0144,
"percent_delta": 0.48,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.3219,
"delta": 0.0059,
"percent_delta": 0.0187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.25,
"after": 1.1318,
"delta": -0.1182,
"percent_delta": -0.0946,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.12,
"after": 0.1755,
"delta": 0.0555,
"percent_delta": 0.4625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.3733,
"delta": 0.0023,
"percent_delta": 0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.625,
"after": 0.6615,
"delta": 0.0365,
"percent_delta": 0.0584,
"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_AB",
"before": 2.5,
"after": 2.7176,
"delta": 0.2176,
"percent_delta": 0.087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.25,
"after": 1.1005,
"delta": -0.1495,
"percent_delta": -0.1196,
"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": 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.0299,
"predicted_3B": 0.0023,
"predicted_AB": 2.7176,
"predicted_AVG": 0.1261,
"predicted_BB": 1.0983,
"predicted_H": 0.3427,
"predicted_HBP": 0.027,
"predicted_HR": 0.0445,
"predicted_OBP": 0.3776,
"predicted_R": 1.1355,
"predicted_RBI": 0.1761,
"predicted_SLG": 0.1879,
"predicted_SO": 0.6628
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0299,
"after": 0.0299,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0023,
"after": 0.0023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7176,
"after": 2.7176,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2659,
"after": 0.1261,
"delta": -0.1398,
"percent_delta": -0.5258,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.1005,
"after": 1.0983,
"delta": -0.0022,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3421,
"after": 0.3427,
"delta": 0.0006,
"percent_delta": 0.0018,
"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.0444,
"after": 0.0445,
"delta": 0.0001,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3219,
"after": 0.3776,
"delta": 0.0557,
"percent_delta": 0.173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1318,
"after": 1.1355,
"delta": 0.0037,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1755,
"after": 0.1761,
"delta": 0.0006,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3733,
"after": 0.1879,
"delta": -0.1854,
"percent_delta": -0.4967,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6615,
"after": 0.6628,
"delta": 0.0013,
"percent_delta": 0.002,
"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.3219,
"after": 0.3776,
"delta": 0.0557,
"percent_delta": 0.173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3733,
"after": 0.1879,
"delta": -0.1854,
"percent_delta": -0.4967,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.72), rates preserved: AVG=0.126 HR/AB=0.016",
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0299,
"after": 0.0,
"delta": -0.0299,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0023,
"after": 0.0,
"delta": -0.0023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7176,
"after": 3.0,
"delta": 0.2824,
"percent_delta": 0.1039,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0983,
"after": 1.0,
"delta": -0.0983,
"percent_delta": -0.0895,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3427,
"after": 0.0,
"delta": -0.3427,
"percent_delta": -1.0,
"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.0445,
"after": 0.0,
"delta": -0.0445,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1761,
"after": 0.0,
"delta": -0.1761,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6628,
"after": 1.0,
"delta": 0.3372,
"percent_delta": 0.5088,
"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.6628,
"after": 1.0,
"delta": 0.3372,
"percent_delta": 0.5088,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.3427,
"after": 0.0,
"delta": -0.3427,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 1.1355,
"after": 1.0,
"delta": -0.1355,
"percent_delta": -0.1193,
"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": 1.1355,
"after": 1.0,
"delta": -0.1355,
"percent_delta": -0.1193,
"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": 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.1261,
"after": 0.333,
"delta": 0.2069,
"percent_delta": 1.6408,
"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.3776,
"after": 0.5,
"delta": 0.1224,
"percent_delta": 0.3242,
"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.1879,
"after": 0.333,
"delta": 0.1451,
"percent_delta": 0.7722,
"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.1261,
"after": 0.333,
"delta": 0.2069,
"percent_delta": 1.6408,
"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": 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": 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": 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": 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_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.1261,
"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.3776,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.1879,
"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.1261,
"delta": -0.2069,
"percent_delta": -0.6213,
"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.5,
"after": 0.3776,
"delta": -0.1224,
"percent_delta": -0.2447,
"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.1879,
"delta": -0.1451,
"percent_delta": -0.4356,
"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.1261,
"delta": -0.2069,
"percent_delta": -0.6213,
"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.27,
"after": 0.1261,
"delta": -0.1439,
"percent_delta": -0.533,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.25,
"after": 0.0,
"delta": -1.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.2,
"after": 2.0,
"delta": 1.8,
"percent_delta": 9.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.316,
"after": 0.3776,
"delta": 0.0616,
"percent_delta": 0.1949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.25,
"after": 0.0,
"delta": -1.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.1879,
"delta": -0.1831,
"percent_delta": -0.4935,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.625,
"after": 0.0,
"delta": -0.625,
"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_H",
"before": 0.2,
"after": 2.0,
"delta": 1.8,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.25,
"after": 0.0,
"delta": -1.25,
"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.270 | - |
| predicted_BB | 1.250 | - |
| predicted_H | 0.200 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.316 | - |
| predicted_R | 1.250 | - |
| predicted_RBI | 0.120 | - |
| predicted_SLG | 0.371 | - |
| 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.030 | 0.030 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 2.718 | 0.218 |
| predicted_AVG | 0.266 | -0.004 |
| predicted_BB | 1.101 | -0.149 |
| predicted_H | 0.342 | 0.142 |
| predicted_HBP | 0.027 | - |
| predicted_HR | 0.044 | 0.014 |
| predicted_OBP | 0.322 | 0.006 |
| predicted_R | 1.132 | -0.118 |
| predicted_RBI | 0.175 | 0.055 |
| predicted_SLG | 0.373 | 0.002 |
| predicted_SO | 0.661 | 0.036 |
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.030 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 2.718 | 0.000 |
| predicted_AVG | 0.126 | -0.140 |
| predicted_BB | 1.098 | -0.002 |
| predicted_H | 0.343 | 0.001 |
| predicted_HBP | 0.027 | 0.000 |
| predicted_HR | 0.044 | 0.000 |
| predicted_OBP | 0.378 | 0.056 |
| predicted_R | 1.135 | 0.004 |
| predicted_RBI | 0.176 | 0.001 |
| predicted_SLG | 0.188 | -0.185 |
| predicted_SO | 0.663 | 0.001 |
AB rounded to 3 (raw=2.72), rates preserved: AVG=0.126 HR/AB=0.016
| 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 | 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 | 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 | 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.030 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | 0.282 |
| predicted_AVG | 0.333 | 0.207 |
| predicted_BB | 1.000 | -0.098 |
| predicted_H | 1.000 | 0.657 |
| predicted_HR | 0.000 | -0.044 |
| predicted_OBP | 0.500 | 0.122 |
| predicted_R | 1.000 | -0.135 |
| predicted_RBI | 0.000 | -0.176 |
| predicted_SLG | 0.333 | 0.145 |
| predicted_SO | 1.000 | 0.337 |
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 | 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 | 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 | 2 | - | 4.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 1.000 | 0.2500 | 0.5000 | 0.2500 | 0.2500 | 0.0000 | 0.0000 | 0.5000 | 0.2500 |
| last_10 | 0.20 | 2 | - | 4.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 1.000 | 0.2500 | 0.5000 | 0.2500 | 0.2500 | 0.0000 | 0.0000 | 0.5000 | 0.2500 |
| season | 0.60 | 2 | - | 4.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 1.000 | 0.2500 | 0.5000 | 0.2500 | 0.2500 | 0.0000 | 0.0000 | 0.5000 | 0.2500 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1450 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.5550 |
| predicted_AVG | 0.2502 |
| predicted_BB | 0.5250 |
| predicted_H | 0.8890 |
| predicted_HBP | 0.0270 |
| predicted_HR | 0.1000 |
| predicted_OBP | 0.3445 |
| predicted_R | 0.6770 |
| predicted_RBI | 0.3890 |
| predicted_SLG | 0.3820 |
| predicted_SO | 0.8020 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1450 | 0.0299 | model_form_blend |
| predicted_3B | 0.0000 | 0.0110 | 0.0023 | model_form_blend |
| predicted_AB | 2.5000 | 3.5550 | 2.7176 | model_form_blend |
| predicted_AVG | 0.2700 | 0.2502 | 0.2659 | model_form_blend |
| predicted_BB | 1.2500 | 0.5250 | 1.1005 | model_form_blend |
| predicted_H | 0.2000 | 0.8890 | 0.3421 | model_form_blend |
| predicted_HBP | - | 0.0270 | 0.0270 | form_only |
| predicted_HR | 0.0300 | 0.1000 | 0.0444 | model_form_blend |
| predicted_OBP | 0.3160 | 0.3445 | 0.3219 | model_form_blend |
| predicted_R | 1.2500 | 0.6770 | 1.1318 | model_form_blend |
| predicted_RBI | 0.1200 | 0.3890 | 0.1755 | model_form_blend |
| predicted_SLG | 0.3710 | 0.3820 | 0.3733 | model_form_blend |
| predicted_SO | 0.6250 | 0.8020 | 0.6615 | 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 | 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.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 | 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 | 2 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| 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 | LF |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 669392 |
| playerID | 669392 |
| playerName | Samad Taylor |
| pos | 2B |
| started | True |
| startingPosition | LF |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 16.7 |
| sl_bb_percent | 33.3 |
| sl_woba | 0.383 |
| sl_xwoba | 0.304 |
| sl_xba | 0.098 |
| sl_xslg | 0.151 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 84.5 |
| sl_launch_angle_avg | -6.7 |
| sl_whiff_percent | 22.2 |
| sl_swing_percent | 39.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.226 | 0.000 | 0.000 | Hitting_2B | 0.225 | 0.000 | -0.225 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.390 | 3.000 | 5.000 | Hitting_AB | 3.371 | 3.000 | -0.371 | 0.000 |
| predicted_AVG | 0.225 | 0.333 | 0.200 | Hitting_AVG | 0.245 | 0.000 | 0.088 | 0.333 |
| predicted_BB | 0.401 | 1.000 | 1.000 | Hitting_BB | 0.399 | 0.000 | 0.601 | 1.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.826 | 0.000 | 0.174 | 1.000 |
| predicted_HR | 0.130 | 1.000 | 0.000 | Hitting_HR | 0.185 | 0.000 | 0.815 | 1.000 |
| predicted_OBP | 0.300 | 0.500 | 0.333 | Hitting_OBP | 0.329 | 0.000 | 0.171 | 0.500 |
| predicted_R | 0.435 | 1.000 | 1.000 | Hitting_R | 0.433 | 0.000 | 0.567 | 1.000 |
| predicted_RBI | 0.400 | 1.000 | 1.000 | Hitting_RBI | 0.489 | 0.000 | 0.511 | 1.000 |
| predicted_SLG | 0.379 | 1.333 | 0.200 | Hitting_SLG | 0.477 | 0.000 | 0.857 | 1.333 |
| predicted_SO | 0.825 | 1.000 | 1.000 | Hitting_SO | 0.820 | 1.000 | 0.180 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_HR: 0.1300 -> 1.0000 (boost 0.8700, better) |
| Biggest Deboost | predicted_AB: 3.3900 -> 3.0000 (deboost -0.3900, 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 | 7 | 1 | 6 | 2 | predicted_AB: 3.3900 -> 5.2775 (boost 1.8875, better) | predicted_AVG: 0.2250 -> 0.2070 (deboost -0.0180, 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.2070 -> 0.1923 (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 | 3 | 4 | predicted_RBI: 0.6542 -> 1.0000 (boost 0.3458, better) | predicted_SO: 1.3628 -> 1.0000 (deboost -0.3628, better) | AB rounded to 5 (raw=5.28), rates preserved: AVG=0.192 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.400) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6555 -> 1.0000 (boost 0.3445, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2863 -> 0.3330 (boost 0.0467, better) | predicted_SLG: 0.3840 -> 0.2000 (deboost -0.1840, 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_HR: 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2000 -> 0.3840 (boost 0.1840, better) | predicted_OBP: 0.3330 -> 0.2863 (deboost -0.0467, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "657757",
"player_name": "Gavin Sheets",
"position": "DH",
"team": "SD",
"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.226,
"predicted_3B": 0.0,
"predicted_AB": 3.39,
"predicted_AVG": 0.225,
"predicted_BB": 0.401,
"predicted_H": 0.7,
"predicted_HR": 0.13,
"predicted_OBP": 0.3,
"predicted_R": 0.435,
"predicted_RBI": 0.4,
"predicted_SLG": 0.379,
"predicted_SO": 0.825
},
"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.0004,
"predicted_AB": 5.2775,
"predicted_AVG": 0.207,
"predicted_BB": 0.6963,
"predicted_H": 1.0133,
"predicted_HBP": 0.07,
"predicted_HR": 0.2468,
"predicted_OBP": 0.2961,
"predicted_R": 0.6533,
"predicted_RBI": 0.652,
"predicted_SLG": 0.3797,
"predicted_SO": 1.3601
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.226,
"after": 0.2684,
"delta": 0.0424,
"percent_delta": 0.1876,
"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.39,
"after": 5.2775,
"delta": 1.8875,
"percent_delta": 0.5568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.207,
"delta": -0.018,
"percent_delta": -0.08,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.401,
"after": 0.6963,
"delta": 0.2953,
"percent_delta": 0.7364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 1.0133,
"delta": 0.3133,
"percent_delta": 0.4476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2468,
"delta": 0.1168,
"percent_delta": 0.8985,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2961,
"delta": -0.0039,
"percent_delta": -0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.435,
"after": 0.6533,
"delta": 0.2183,
"percent_delta": 0.5018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.652,
"delta": 0.252,
"percent_delta": 0.63,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.379,
"after": 0.3797,
"delta": 0.0007,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.825,
"after": 1.3601,
"delta": 0.5351,
"percent_delta": 0.6486,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.39,
"after": 5.2775,
"delta": 1.8875,
"percent_delta": 0.5568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.207,
"delta": -0.018,
"percent_delta": -0.08,
"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": 9,
"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.2684,
"predicted_3B": 0.0004,
"predicted_AB": 5.2775,
"predicted_AVG": 0.1923,
"predicted_BB": 0.6949,
"predicted_H": 1.015,
"predicted_HBP": 0.07,
"predicted_HR": 0.2475,
"predicted_OBP": 0.2863,
"predicted_R": 0.6555,
"predicted_RBI": 0.6542,
"predicted_SLG": 0.384,
"predicted_SO": 1.3628
},
"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.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.2775,
"after": 5.2775,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.207,
"after": 0.1923,
"delta": -0.0147,
"percent_delta": -0.071,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6963,
"after": 0.6949,
"delta": -0.0014,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0133,
"after": 1.015,
"delta": 0.0017,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.07,
"after": 0.07,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2468,
"after": 0.2475,
"delta": 0.0007,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2961,
"after": 0.2863,
"delta": -0.0098,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6533,
"after": 0.6555,
"delta": 0.0022,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.652,
"after": 0.6542,
"delta": 0.0022,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3797,
"after": 0.384,
"delta": 0.0043,
"percent_delta": 0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.3601,
"after": 1.3628,
"delta": 0.0027,
"percent_delta": 0.002,
"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.207,
"after": 0.1923,
"delta": -0.0147,
"percent_delta": -0.071,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.28), rates preserved: AVG=0.192 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.2684,
"after": 0.0,
"delta": -0.2684,
"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": 5.2775,
"after": 5.0,
"delta": -0.2775,
"percent_delta": -0.0526,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6949,
"after": 1.0,
"delta": 0.3051,
"percent_delta": 0.4391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.015,
"after": 1.0,
"delta": -0.015,
"percent_delta": -0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2475,
"after": 0.0,
"delta": -0.2475,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6542,
"after": 1.0,
"delta": 0.3458,
"percent_delta": 0.5286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3628,
"after": 1.0,
"delta": -0.3628,
"percent_delta": -0.2662,
"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.6542,
"after": 1.0,
"delta": 0.3458,
"percent_delta": 0.5286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3628,
"after": 1.0,
"delta": -0.3628,
"percent_delta": -0.2662,
"direction": "deboost",
"projection_effect": "better",
"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": 5.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": 5.0,
"after": 5.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.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": 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": 5.0,
"after": 5.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.6555,
"after": 1.0,
"delta": 0.3445,
"percent_delta": 0.5256,
"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.6555,
"after": 1.0,
"delta": 0.3445,
"percent_delta": 0.5256,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.1923,
"after": 0.2,
"delta": 0.0077,
"percent_delta": 0.04,
"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.2863,
"after": 0.333,
"delta": 0.0467,
"percent_delta": 0.1631,
"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.384,
"after": 0.2,
"delta": -0.184,
"percent_delta": -0.4792,
"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.2863,
"after": 0.333,
"delta": 0.0467,
"percent_delta": 0.1631,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.384,
"after": 0.2,
"delta": -0.184,
"percent_delta": -0.4792,
"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": 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": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"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": 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_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": 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.1923,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2863,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.384,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1923,
"delta": -0.0077,
"percent_delta": -0.0383,
"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.2863,
"delta": -0.0467,
"percent_delta": -0.1402,
"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.2,
"after": 0.384,
"delta": 0.184,
"percent_delta": 0.9201,
"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.2,
"after": 0.384,
"delta": 0.184,
"percent_delta": 0.9201,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2863,
"delta": -0.0467,
"percent_delta": -0.1402,
"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.226,
"after": 0.0,
"delta": -0.226,
"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.39,
"after": 3.0,
"delta": -0.39,
"percent_delta": -0.115,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.1923,
"delta": -0.0327,
"percent_delta": -0.1453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.401,
"after": 1.0,
"delta": 0.599,
"percent_delta": 1.4938,
"direction": "boost",
"projection_effect": "better",
"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.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2863,
"delta": -0.0137,
"percent_delta": -0.0457,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.435,
"after": 1.0,
"delta": 0.565,
"percent_delta": 1.2989,
"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.379,
"after": 0.384,
"delta": 0.005,
"percent_delta": 0.0132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.825,
"after": 1.0,
"delta": 0.175,
"percent_delta": 0.2121,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 7,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.39,
"after": 3.0,
"delta": -0.39,
"percent_delta": -0.115,
"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.226 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.390 | - |
| predicted_AVG | 0.225 | - |
| predicted_BB | 0.401 | - |
| predicted_H | 0.700 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.300 | - |
| predicted_R | 0.435 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.379 | - |
| predicted_SO | 0.825 | - |
Final model 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.042 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.277 | 1.887 |
| predicted_AVG | 0.207 | -0.018 |
| predicted_BB | 0.696 | 0.295 |
| predicted_H | 1.013 | 0.313 |
| predicted_HBP | 0.070 | - |
| predicted_HR | 0.247 | 0.117 |
| predicted_OBP | 0.296 | -0.004 |
| predicted_R | 0.653 | 0.218 |
| predicted_RBI | 0.652 | 0.252 |
| predicted_SLG | 0.380 | 0.001 |
| predicted_SO | 1.360 | 0.535 |
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.000 | 0.000 |
| predicted_AB | 5.277 | 0.000 |
| predicted_AVG | 0.192 | -0.015 |
| predicted_BB | 0.695 | -0.001 |
| predicted_H | 1.015 | 0.002 |
| predicted_HBP | 0.070 | 0.000 |
| predicted_HR | 0.247 | 0.001 |
| predicted_OBP | 0.286 | -0.010 |
| predicted_R | 0.655 | 0.002 |
| predicted_RBI | 0.654 | 0.002 |
| predicted_SLG | 0.384 | 0.004 |
| predicted_SO | 1.363 | 0.003 |
AB rounded to 5 (raw=5.28), rates preserved: AVG=0.192 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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=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 | 5.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 | 5.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.268 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.277 |
| predicted_AVG | 0.200 | 0.008 |
| predicted_BB | 1.000 | 0.305 |
| predicted_H | 1.000 | -0.015 |
| predicted_HR | 0.000 | -0.247 |
| predicted_OBP | 0.333 | 0.047 |
| predicted_R | 1.000 | 0.345 |
| predicted_RBI | 1.000 | 0.346 |
| predicted_SLG | 0.200 | -0.184 |
| predicted_SO | 1.000 | -0.363 |
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 | 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 | 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 | 1.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 3.000 | 4.000 | 0.0625 | 0.2105 | 0.2500 | 0.0625 | 0.0625 | 0.1250 | 0.1875 | 0.2500 |
| last_10 | 0.20 | 9 | - | 34.000 | 3.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 6.000 | 13.000 | 0.0882 | 0.2439 | 0.1765 | 0.0882 | 0.0294 | 0.0588 | 0.1765 | 0.3824 |
| season | 0.60 | 57 | - | 600.000 | 147.000 | 40.000 | 0.000 | 33.000 | 87.000 | 77.000 | 71.000 | 146.000 | 0.2450 | 0.3289 | 0.4767 | 0.2450 | 0.0550 | 0.1450 | 0.1183 | 0.2433 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3230 |
| predicted_3B | 0.0010 |
| predicted_AB | 7.7040 |
| predicted_AVG | 0.1838 |
| predicted_BB | 1.0760 |
| predicted_H | 1.4160 |
| predicted_HBP | 0.0700 |
| predicted_HR | 0.3970 |
| predicted_OBP | 0.2911 |
| predicted_R | 0.9340 |
| predicted_RBI | 0.9760 |
| predicted_SLG | 0.3807 |
| predicted_SO | 2.0480 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2260 | 0.3230 | 0.2684 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.3900 | 7.7040 | 5.2775 | model_form_blend |
| predicted_AVG | 0.2250 | 0.1838 | 0.2070 | model_form_blend |
| predicted_BB | 0.4010 | 1.0760 | 0.6963 | model_form_blend |
| predicted_H | 0.7000 | 1.4160 | 1.0133 | model_form_blend |
| predicted_HBP | - | 0.0700 | 0.0700 | form_only |
| predicted_HR | 0.1300 | 0.3970 | 0.2468 | model_form_blend |
| predicted_OBP | 0.3000 | 0.2911 | 0.2961 | model_form_blend |
| predicted_R | 0.4350 | 0.9340 | 0.6533 | model_form_blend |
| predicted_RBI | 0.4000 | 0.9760 | 0.6520 | model_form_blend |
| predicted_SLG | 0.3790 | 0.3807 | 0.3797 | model_form_blend |
| predicted_SO | 0.8250 | 2.0480 | 1.3601 | 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 | 177 |
| 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 | 1 |
| 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 | 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 | 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 | 20260606_NYM@SD |
| game_type | full |
| mlbID | 657757 |
| playerID | 657757 |
| playerName | Gavin Sheets |
| pos | 1B |
| started | True |
| startingPosition | LF |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-06 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 11.3 |
| sl_woba | 0.343 |
| sl_xwoba | 0.336 |
| sl_xba | 0.243 |
| sl_xslg | 0.427 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 45.1 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 15.9 |
| sl_whiff_percent | 21.7 |
| sl_swing_percent | 42.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.152 | 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.170 | 4.000 | 5.000 | Hitting_AB | 2.886 | 4.000 | 1.114 | 0.000 |
| predicted_AVG | 0.243 | 0.000 | 0.200 | Hitting_AVG | 0.144 | 0.500 | -0.144 | -0.500 |
| predicted_BB | 0.375 | 0.000 | 1.000 | Hitting_BB | 0.341 | 0.000 | -0.341 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_H | 0.510 | 0.000 | 1.000 | Hitting_H | 0.415 | 2.000 | -0.415 | -2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.016 | 1.000 | -0.016 | -1.000 |
| predicted_OBP | 0.277 | 0.000 | 0.333 | Hitting_OBP | 0.245 | 0.500 | -0.245 | -0.500 |
| predicted_R | 0.393 | 0.000 | 1.000 | Hitting_R | 0.358 | 1.000 | -0.358 | -1.000 |
| predicted_RBI | 0.370 | 0.000 | 1.000 | Hitting_RBI | 0.146 | 3.000 | -0.146 | -3.000 |
| predicted_SLG | 0.384 | 0.000 | 0.200 | Hitting_SLG | 0.208 | 1.500 | -0.208 | -1.500 |
| predicted_SO | 0.786 | 0.000 | 1.000 | Hitting_SO | 0.715 | 0.000 | -0.715 | 0.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_AB: 3.1700 -> 4.0000 (boost 0.8300, better) |
| Biggest Deboost | predicted_SO: 0.7860 -> 0.0000 (deboost -0.7860, 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 | 10 | 8 | 2 | 7 | 3 | predicted_AB: 3.1700 -> 4.8645 (boost 1.6945, better) | predicted_AVG: 0.2430 -> 0.2117 (deboost -0.0313, 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.2117 -> 0.1670 (deboost -0.0447, 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 | 5 | 3 | predicted_BB: 0.5160 -> 1.0000 (boost 0.4840, better) | predicted_2B: 0.2531 -> 0.0000 (deboost -0.2531, worse) | AB rounded to 5 (raw=4.86), rates preserved: AVG=0.167 HR/AB=0.043 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6174 -> 1.0000 (boost 0.3826, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2469 -> 0.3330 (boost 0.0861, better) | predicted_SLG: 0.3485 -> 0.2000 (deboost -0.1485, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 5.0000 -> 4.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.2000 -> 0.3485 (boost 0.1485, better) | predicted_OBP: 0.3330 -> 0.2469 (deboost -0.0861, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666023",
"player_name": "Freddy Fermin",
"position": "C",
"team": "SD",
"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.152,
"predicted_3B": 0.0,
"predicted_AB": 3.17,
"predicted_AVG": 0.243,
"predicted_BB": 0.375,
"predicted_H": 0.51,
"predicted_HR": 0.1,
"predicted_OBP": 0.277,
"predicted_R": 0.393,
"predicted_RBI": 0.37,
"predicted_SLG": 0.384,
"predicted_SO": 0.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.2531,
"predicted_3B": 0.0009,
"predicted_AB": 4.8645,
"predicted_AVG": 0.2117,
"predicted_BB": 0.517,
"predicted_H": 0.8111,
"predicted_HBP": 0.102,
"predicted_HR": 0.2088,
"predicted_OBP": 0.2662,
"predicted_R": 0.6154,
"predicted_RBI": 0.6836,
"predicted_SLG": 0.3797,
"predicted_SO": 1.2024
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.152,
"after": 0.2531,
"delta": 0.1011,
"percent_delta": 0.6651,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.17,
"after": 4.8645,
"delta": 1.6945,
"percent_delta": 0.5345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2117,
"delta": -0.0313,
"percent_delta": -0.1288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.375,
"after": 0.517,
"delta": 0.142,
"percent_delta": 0.3787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.51,
"after": 0.8111,
"delta": 0.3011,
"percent_delta": 0.5904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.2088,
"delta": 0.1088,
"percent_delta": 1.088,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.277,
"after": 0.2662,
"delta": -0.0108,
"percent_delta": -0.039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.393,
"after": 0.6154,
"delta": 0.2224,
"percent_delta": 0.5659,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.6836,
"delta": 0.3136,
"percent_delta": 0.8476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.384,
"after": 0.3797,
"delta": -0.0043,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.786,
"after": 1.2024,
"delta": 0.4164,
"percent_delta": 0.5298,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.17,
"after": 4.8645,
"delta": 1.6945,
"percent_delta": 0.5345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2117,
"delta": -0.0313,
"percent_delta": -0.1288,
"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": 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.2531,
"predicted_3B": 0.0009,
"predicted_AB": 4.8645,
"predicted_AVG": 0.167,
"predicted_BB": 0.516,
"predicted_H": 0.8125,
"predicted_HBP": 0.102,
"predicted_HR": 0.2094,
"predicted_OBP": 0.2469,
"predicted_R": 0.6174,
"predicted_RBI": 0.6859,
"predicted_SLG": 0.3485,
"predicted_SO": 1.2048
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2531,
"after": 0.2531,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8645,
"after": 4.8645,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2117,
"after": 0.167,
"delta": -0.0447,
"percent_delta": -0.2111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.517,
"after": 0.516,
"delta": -0.001,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8111,
"after": 0.8125,
"delta": 0.0014,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.102,
"after": 0.102,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2088,
"after": 0.2094,
"delta": 0.0006,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2662,
"after": 0.2469,
"delta": -0.0193,
"percent_delta": -0.0725,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6154,
"after": 0.6174,
"delta": 0.002,
"percent_delta": 0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6836,
"after": 0.6859,
"delta": 0.0023,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3797,
"after": 0.3485,
"delta": -0.0312,
"percent_delta": -0.0822,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2024,
"after": 1.2048,
"delta": 0.0024,
"percent_delta": 0.002,
"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.2117,
"after": 0.167,
"delta": -0.0447,
"percent_delta": -0.2111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.86), rates preserved: AVG=0.167 HR/AB=0.043",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.2531,
"after": 0.0,
"delta": -0.2531,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8645,
"after": 5.0,
"delta": 0.1355,
"percent_delta": 0.0279,
"direction": "boost",
"projection_effect": "better",
"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.8125,
"after": 1.0,
"delta": 0.1875,
"percent_delta": 0.2308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.102,
"after": 0.0,
"delta": -0.102,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2094,
"after": 0.0,
"delta": -0.2094,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6859,
"after": 1.0,
"delta": 0.3141,
"percent_delta": 0.4579,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2048,
"after": 1.0,
"delta": -0.2048,
"percent_delta": -0.17,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 3,
"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_2B",
"before": 0.2531,
"after": 0.0,
"delta": -0.2531,
"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": 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": 5.0,
"after": 5.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.6174,
"after": 1.0,
"delta": 0.3826,
"percent_delta": 0.6197,
"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.6174,
"after": 1.0,
"delta": 0.3826,
"percent_delta": 0.6197,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.167,
"after": 0.2,
"delta": 0.033,
"percent_delta": 0.1976,
"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.2469,
"after": 0.333,
"delta": 0.0861,
"percent_delta": 0.3487,
"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.3485,
"after": 0.2,
"delta": -0.1485,
"percent_delta": -0.4261,
"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.2469,
"after": 0.333,
"delta": 0.0861,
"percent_delta": 0.3487,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3485,
"after": 0.2,
"delta": -0.1485,
"percent_delta": -0.4261,
"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": 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": 0.0,
"delta": -1.0,
"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_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.167,
"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.2469,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3485,
"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.167,
"delta": -0.033,
"percent_delta": -0.1649,
"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.2469,
"delta": -0.0861,
"percent_delta": -0.2586,
"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.2,
"after": 0.3485,
"delta": 0.1485,
"percent_delta": 0.7427,
"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.2,
"after": 0.3485,
"delta": 0.1485,
"percent_delta": 0.7427,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2469,
"delta": -0.0861,
"percent_delta": -0.2586,
"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.152,
"after": 0.0,
"delta": -0.152,
"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.17,
"after": 4.0,
"delta": 0.83,
"percent_delta": 0.2618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.167,
"delta": -0.076,
"percent_delta": -0.3128,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.375,
"after": 0.0,
"delta": -0.375,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"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.277,
"after": 0.2469,
"delta": -0.0301,
"percent_delta": -0.1087,
"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.37,
"after": 0.0,
"delta": -0.37,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.384,
"after": 0.3485,
"delta": -0.0355,
"percent_delta": -0.0924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.786,
"after": 0.0,
"delta": -0.786,
"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_AB",
"before": 3.17,
"after": 4.0,
"delta": 0.83,
"percent_delta": 0.2618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.786,
"after": 0.0,
"delta": -0.786,
"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.152 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.170 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.375 | - |
| predicted_H | 0.510 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.277 | - |
| predicted_R | 0.393 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.384 | - |
| predicted_SO | 0.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.253 | 0.101 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.864 | 1.694 |
| predicted_AVG | 0.212 | -0.031 |
| predicted_BB | 0.517 | 0.142 |
| predicted_H | 0.811 | 0.301 |
| predicted_HBP | 0.102 | - |
| predicted_HR | 0.209 | 0.109 |
| predicted_OBP | 0.266 | -0.011 |
| predicted_R | 0.615 | 0.222 |
| predicted_RBI | 0.684 | 0.314 |
| predicted_SLG | 0.380 | -0.004 |
| predicted_SO | 1.202 | 0.416 |
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.253 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.864 | 0.000 |
| predicted_AVG | 0.167 | -0.045 |
| predicted_BB | 0.516 | -0.001 |
| predicted_H | 0.812 | 0.001 |
| predicted_HBP | 0.102 | 0.000 |
| predicted_HR | 0.209 | 0.001 |
| predicted_OBP | 0.247 | -0.019 |
| predicted_R | 0.617 | 0.002 |
| predicted_RBI | 0.686 | 0.002 |
| predicted_SLG | 0.348 | -0.031 |
| predicted_SO | 1.205 | 0.002 |
AB rounded to 5 (raw=4.86), rates preserved: AVG=0.167 HR/AB=0.043
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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 | 5.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.253 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.136 |
| predicted_AVG | 0.200 | 0.033 |
| predicted_BB | 1.000 | 0.484 |
| predicted_H | 1.000 | 0.188 |
| predicted_HR | 0.000 | -0.209 |
| predicted_OBP | 0.333 | 0.086 |
| predicted_R | 1.000 | 0.383 |
| predicted_RBI | 1.000 | 0.314 |
| predicted_SLG | 0.200 | -0.148 |
| predicted_SO | 1.000 | -0.205 |
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 | -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 | 3.000 | 1.000 | 0.000 | 2.000 | 5.000 | 2.000 | 1.000 | 3.000 | 0.2500 | 0.3077 | 0.8333 | 0.2500 | 0.1667 | 0.4167 | 0.0833 | 0.2500 |
| last_10 | 0.20 | 8 | - | 24.000 | 3.000 | 1.000 | 0.000 | 2.000 | 6.000 | 2.000 | 1.000 | 6.000 | 0.1250 | 0.1600 | 0.4167 | 0.1250 | 0.0833 | 0.2500 | 0.0417 | 0.2500 |
| season | 0.60 | 36 | - | 355.000 | 51.000 | 17.000 | 0.000 | 2.000 | 18.000 | 44.000 | 42.000 | 88.000 | 0.1437 | 0.2446 | 0.2085 | 0.1437 | 0.0056 | 0.0507 | 0.1183 | 0.2479 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3870 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.1090 |
| predicted_AVG | 0.1702 |
| predicted_BB | 0.7050 |
| predicted_H | 1.2100 |
| predicted_HBP | 0.1020 |
| predicted_HR | 0.3530 |
| predicted_OBP | 0.2518 |
| predicted_R | 0.9100 |
| predicted_RBI | 1.0990 |
| predicted_SLG | 0.3740 |
| predicted_SO | 1.7540 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1520 | 0.3870 | 0.2531 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.1700 | 7.1090 | 4.8645 | model_form_blend |
| predicted_AVG | 0.2430 | 0.1702 | 0.2117 | model_form_blend |
| predicted_BB | 0.3750 | 0.7050 | 0.5170 | model_form_blend |
| predicted_H | 0.5100 | 1.2100 | 0.8111 | model_form_blend |
| predicted_HBP | - | 0.1020 | 0.1020 | form_only |
| predicted_HR | 0.1000 | 0.3530 | 0.2088 | model_form_blend |
| predicted_OBP | 0.2770 | 0.2518 | 0.2662 | model_form_blend |
| predicted_R | 0.3930 | 0.9100 | 0.6154 | model_form_blend |
| predicted_RBI | 0.3700 | 1.0990 | 0.6836 | model_form_blend |
| predicted_SLG | 0.3840 | 0.3740 | 0.3797 | model_form_blend |
| predicted_SO | 0.7860 | 1.7540 | 1.2024 | 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 | 112 |
| 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.144 |
| 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 | 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 | 6 |
| 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 | 20260607_NYM@SD |
| game_type | full |
| mlbID | 666023 |
| playerID | 666023 |
| playerName | Freddy Fermin |
| pos | C |
| started | True |
| startingPosition | C |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.4 |
| sl_bb_percent | 9.5 |
| sl_woba | 0.228 |
| sl_xwoba | 0.257 |
| sl_xba | 0.19 |
| sl_xslg | 0.273 |
| sl_sweet_spot_percent | 29.4 |
| sl_barrel_batted_rate | 2.4 |
| sl_hard_hit_percent | 25.9 |
| sl_exit_velocity_avg | 86.3 |
| sl_launch_angle_avg | 14.5 |
| sl_whiff_percent | 25.8 |
| 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_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.667 | 2.000 | -0.667 | -1.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 2.417 | 1.000 | -0.417 | 1.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 4.500 | 4.000 | -0.500 | 0.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 4.650 | 6.000 | 0.450 | -0.900 |
| predicted_SO | 5.000 | 5.000 | 5.000 | Pitching_SO | 4.083 | 6.000 | 0.917 | -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": "621111",
"player_name": "Walker Buehler",
"position": "Starter",
"team": "SD",
"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": 1.0,
"predicted_IP": 5.3333,
"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": 1.0,
"predicted_ER": 2.0,
"predicted_H": 4.0,
"predicted_HR": 1.0,
"predicted_IP": 5.1,
"predicted_R": 2.0,
"predicted_SO": 5.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": 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": 5.0,
"after": 5.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": 4.0,
"after": 4.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": 5.0,
"after": 5.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 | 4.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.333 | - |
| 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 | 27.100 | 10.000 | 20.000 | 8.000 | 20.000 | 2.000 | 3.2927 | 1.0244 | 0.3659 | 0.7317 | 0.2927 | 0.7317 | 0.0732 |
| last_10 | 0.35 | 10 | 51.000 | 22.000 | 46.000 | 15.000 | 42.000 | 3.000 | 3.8824 | 1.1961 | 0.4314 | 0.9020 | 0.2941 | 0.8235 | 0.0588 |
| season | 0.20 | 12 | 57.200 | 29.000 | 54.000 | 20.000 | 49.000 | 4.000 | 4.5260 | 1.2832 | 0.5029 | 0.9364 | 0.3468 | 0.8497 | 0.0694 |
| Metric | Value |
|---|---|
| predicted_BB | 1.6590 |
| predicted_ER | 2.2500 |
| predicted_ERA | 3.9274 |
| predicted_H | 4.4820 |
| predicted_HR | 0.4570 |
| predicted_IP | 5.0000 |
| predicted_SO | 4.2840 |
| predicted_WHIP | 1.1909 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.6590 | 1.3465 | model_form_blend |
| predicted_ER | 2.0000 | 2.2500 | 2.1314 | model_form_blend |
| predicted_ERA | - | 3.9274 | 3.9274 | form_only |
| predicted_H | 4.0000 | 4.4820 | 4.2534 | model_form_blend |
| predicted_HR | 1.0000 | 0.4570 | 0.7145 | model_form_blend |
| predicted_IP | 5.1000 | 5.0000 | 5.2000 | model_form_blend |
| predicted_SO | 5.0000 | 4.2840 | 4.6236 | model_form_blend |
| predicted_WHIP | - | 1.1909 | 1.1909 | 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.1 |
| H | 4 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 5 |
| HR | 1 |
| BF | 22 |
| Pitches | 93 |
| 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 | 1 |
| Pitching_ERA | 4.53 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 7 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.0 |
| Pitching_Pitches | 86 |
| Pitching_R | 1 |
| Pitching_SO | 6 |
| Pitching_Strikes | 56 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260603_SD@PHI |
| game_type | full |
| mlbID | 621111 |
| playerID | 621111 |
| playerName | Walker Buehler |
| pos | P |
| started | True |
| startingPosition | P |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-03 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.299 |
| sl_xwoba | 0.337 |
| sl_sweet_spot_percent | 37.8 |
| sl_barrel_batted_rate | 8.1 |
| sl_hard_hit_percent | 40.7 |
| sl_whiff_percent | 19.7 |
| sl_swing_percent | 43.8 |
| sl_avg_best_speed | 80.812066047 |
| sl_avg_hyper_speed | 94.247383023 |
| 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.241 | 0.000 | -0.241 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.552 | 0.000 | -0.552 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.000 | 0.000 | -1.000 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.903 | 1.000 | 0.197 | 0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.276 | 2.000 | -0.276 | -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": "670970",
"player_name": "Adrian Morejon",
"position": "Middle Reliever",
"team": "SD",
"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.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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 | 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.000 | 3.000 | 5.000 | 1.000 | 4.000 | 0.000 | 6.7500 | 1.5000 | 0.7500 | 1.2500 | 0.2500 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 3.000 | 7.000 | 1.000 | 10.000 | 0.000 | 2.8929 | 0.8571 | 0.3214 | 0.7500 | 0.1071 | 1.0714 | 0.0000 |
| season | 0.20 | 29 | 31.100 | 16.000 | 29.000 | 7.000 | 37.000 | 2.000 | 4.5957 | 1.1489 | 0.5106 | 0.9255 | 0.2234 | 1.1808 | 0.0638 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2480 |
| predicted_ER | 0.4790 |
| predicted_ERA | 4.6984 |
| predicted_H | 0.9050 |
| predicted_HR | 0.0640 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9210 |
| predicted_WHIP | 1.2571 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2480 | 0.1144 | model_form_blend |
| predicted_ER | 0.0000 | 0.4790 | 0.2209 | model_form_blend |
| predicted_ERA | - | 4.6984 | 4.6984 | form_only |
| predicted_H | 0.0000 | 0.9050 | 0.4174 | model_form_blend |
| predicted_HR | 0.0000 | 0.0640 | 0.0295 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9210 | 0.9636 | model_form_blend |
| predicted_WHIP | - | 1.2571 | 1.2571 | 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 | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| 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 | 4.60 |
| 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 | 13 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260606_NYM@SD |
| game_type | full |
| mlbID | 670970 |
| playerID | 670970 |
| playerName | Adrian Morejon |
| pos | P |
| started | False |
| startingPosition | P |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-06 |
| sl_k_percent | 28.2 |
| sl_bb_percent | 5.3 |
| sl_woba | 0.274 |
| sl_xwoba | 0.262 |
| sl_sweet_spot_percent | 32.6 |
| sl_barrel_batted_rate | 2.4 |
| sl_hard_hit_percent | 30.2 |
| sl_whiff_percent | 35.5 |
| sl_swing_percent | 53.0 |
| sl_avg_best_speed | 73.38062907 |
| sl_avg_hyper_speed | 92.899643412 |
| 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.462 | 1.000 | -0.462 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.115 | 0.000 | -0.115 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.462 | 0.000 | 0.538 | 1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.954 | 1.000 | 0.146 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.962 | 1.000 | -1.962 | -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": "695243",
"player_name": "Mason Miller",
"position": "Middle Reliever",
"team": "SD",
"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 | 4.200 | 1.000 | 2.000 | 4.000 | 6.000 | 0.000 | 1.9286 | 1.2857 | 0.2143 | 0.4286 | 0.8571 | 1.2857 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 1.000 | 5.000 | 9.000 | 19.000 | 0.000 | 0.8710 | 1.3548 | 0.0968 | 0.4839 | 0.8710 | 1.8387 | 0.0000 |
| season | 0.20 | 26 | 26.200 | 3.000 | 12.000 | 12.000 | 51.000 | 0.000 | 1.0125 | 0.9000 | 0.1125 | 0.4500 | 0.4500 | 1.9125 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5780 |
| predicted_ER | 0.3150 |
| predicted_ERA | 2.8308 |
| predicted_H | 0.6980 |
| predicted_HR | 0.0680 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2780 |
| predicted_WHIP | 1.2762 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5780 | 0.2567 | model_form_blend |
| predicted_ER | 0.0000 | 0.3150 | 0.1399 | model_form_blend |
| predicted_ERA | - | 2.8308 | 2.8308 | form_only |
| predicted_H | 1.0000 | 0.6980 | 0.8659 | model_form_blend |
| predicted_HR | 0.0000 | 0.0680 | 0.0302 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.2780 | 0.5677 | model_form_blend |
| predicted_WHIP | - | 1.2762 | 1.2762 | 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.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 22 |
| 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.01 |
| 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 | 17 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260606_NYM@SD |
| game_type | full |
| mlbID | 695243 |
| playerID | 695243 |
| playerName | Mason Miller |
| pos | P |
| started | False |
| startingPosition | P |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-06 |
| sl_k_percent | 49.0 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.184 |
| sl_xwoba | 0.176 |
| sl_sweet_spot_percent | 29.3 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 14.6 |
| sl_whiff_percent | 50.2 |
| sl_swing_percent | 45.0 |
| sl_avg_best_speed | 71.76267381 |
| sl_avg_hyper_speed | 90.716178293 |
| 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 | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.160 | 0.000 | 0.840 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.840 | 2.000 | 0.160 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.796 | 1.000 | 0.204 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.520 | 0.000 | 0.480 | 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": "592094",
"player_name": "Jason Adam",
"position": "Middle Reliever",
"team": "SD",
"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": 1.0,
"predicted_H": 1.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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_R": 1.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": 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": 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": 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": 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 | 1.000 | - |
| predicted_H | 1.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.100 | 2.000 | 9.000 | 0.000 | 3.000 | 2.000 | 5.4000 | 2.7000 | 0.6000 | 2.7000 | 0.0000 | 0.9000 | 0.6000 |
| last_10 | 0.35 | 10 | 8.100 | 2.000 | 12.000 | 1.000 | 7.000 | 2.000 | 2.1600 | 1.5600 | 0.2400 | 1.4400 | 0.1200 | 0.8400 | 0.2400 |
| season | 0.20 | 25 | 22.000 | 4.000 | 21.000 | 5.000 | 13.000 | 3.000 | 1.6364 | 1.1818 | 0.1818 | 0.9546 | 0.2273 | 0.5909 | 0.1364 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1640 |
| predicted_ER | 0.3080 |
| predicted_ERA | 3.9682 |
| predicted_H | 0.9770 |
| predicted_HR | 0.1760 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6140 |
| predicted_WHIP | 1.6360 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.1640 | 0.6456 | model_form_blend |
| predicted_ER | 1.0000 | 0.3080 | 0.7066 | model_form_blend |
| predicted_ERA | - | 3.9682 | 3.9682 | form_only |
| predicted_H | 1.0000 | 0.9770 | 0.9902 | model_form_blend |
| predicted_HR | 1.0000 | 0.1760 | 0.6507 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6140 | 0.8364 | model_form_blend |
| predicted_WHIP | - | 1.6360 | 1.6360 | 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 | 1 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 1 |
| HR | 1 |
| 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 | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.64 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 2 |
| 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 | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260606_NYM@SD |
| game_type | full |
| mlbID | 592094 |
| playerID | 592094 |
| playerName | Jason Adam |
| pos | P |
| started | False |
| startingPosition | P |
| team | SD |
| teamID | 23 |
| game_date | 2026-06-06 |
| sl_k_percent | 14.3 |
| sl_bb_percent | 5.5 |
| sl_woba | 0.305 |
| sl_xwoba | 0.294 |
| sl_sweet_spot_percent | 26.4 |
| sl_barrel_batted_rate | 6.9 |
| sl_hard_hit_percent | 40.3 |
| sl_whiff_percent | 26.9 |
| sl_swing_percent | 54.3 |
| sl_avg_best_speed | 77.024153056 |
| sl_avg_hyper_speed | 93.532016901 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | HOU 5 - 3 LAA | HOU | 0.572 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | HOU 5 - 2 LAA | HOU | - | 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.5722 |
| 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 | 8.194 | 2.651 | - | Base ML historical model prediction |
| 2 | variance_applied | 9 | 3 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 5 | 3 | 0.5722 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 5 | 3 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 5 | 3 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 5 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4744516728624536,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.051589219330855085,
"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": 8,
"pre_simulation_expected_total_runs": 9.6,
"low_score_model_expected_total_runs": 9.6,
"final_simulation_total_runs": 7,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 64,
"near_bucket_sample_size": 19,
"medium_bucket_sample_size": 64,
"wide_bucket_sample_size": 143,
"global_sample_size": 143,
"bucket_scope": "pooled_0.08",
"sparse_bucket": false,
"empirical_hit_rate": 0.5625,
"bayesian_hit_rate": 0.5488,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.7805,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6275,
"calibrated_pick_probability": 0.5722,
"predicted_side": "away"
}{
"applied": false,
"home": {
"team": "LAA",
"games": 66,
"wins": 25,
"losses": 41,
"win_pct": 0.3787878787878788,
"runs_scored": 291,
"runs_allowed": 342,
"run_differential": -51,
"run_differential_per_game": -0.7727272727272727,
"available": true
},
"away": {
"team": "HOU",
"games": 67,
"wins": 30,
"losses": 37,
"win_pct": 0.44776119402985076,
"runs_scored": 307,
"runs_allowed": 336,
"run_differential": -29,
"run_differential_per_game": -0.43283582089552236,
"available": true
},
"run_differential_edge_per_game": -0.3399,
"win_pct_edge": -0.069,
"quality_edge": -0.4434,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "HOU",
"guardrail_predicted_team": "HOU",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "HOU",
"output_opponent_team": "LAA",
"final_score_winner": "HOU",
"pre_simulation_winner": "HOU",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 5,
"home_runs": 3,
"score_text": "HOU 5 - 3 LAA",
"winner": "HOU"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 2,
"score_text": "HOU 5 - 2 LAA",
"winner": "HOU"
},
"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": "LAA",
"games": 66,
"wins": 25,
"losses": 41,
"win_pct": 0.3787878787878788,
"runs_scored": 291,
"runs_allowed": 342,
"run_differential": -51,
"run_differential_per_game": -0.7727272727272727,
"available": true
},
"away": {
"team": "HOU",
"games": 67,
"wins": 30,
"losses": 37,
"win_pct": 0.44776119402985076,
"runs_scored": 307,
"runs_allowed": 336,
"run_differential": -29,
"run_differential_per_game": -0.43283582089552236,
"available": true
}
}
}{
"applied": true,
"raw_margin": -5.8266,
"final_margin": -1.5,
"margin_cap": 1.5,
"season_quality_edge": 0.4434,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 4.568,
"home_runs": 3.068
}
}{
"applied": false,
"raw_confidence": 0.572241,
"final_confidence": 0.572241,
"confidence_cap": 0.66,
"score_gap": 1.5,
"calibration_sample_size": 64,
"calibration_empirical_hit_rate": 0.5625,
"calibration_bayesian_hit_rate": 0.5488,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.4434,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is moderate",
"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": 5,
"home_runs": 3,
"score_text": "HOU 5 - 3 LAA",
"winner": "HOU"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 2,
"score_text": "HOU 5 - 2 LAA",
"winner": "HOU"
},
"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": 5,
"home_runs": 3,
"confidence": 0.572241,
"home_win_probability": 0.427759,
"away_win_probability": 0.572241,
"predicted_score_text": "HOU 5 - 3 LAA",
"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": "HOU",
"original_runs": 5,
"run_delta": 0.3295,
"adjusted_runs": 5,
"lineup": {
"players_used": 9,
"total_weight": 52.0,
"quality": 0.2942313250135233,
"contact": 0.20600121792824042,
"power": 0.2874467301291119,
"discipline": 0.04028785558171513,
"xwoba": 0.3410576923076923,
"recent_xwoba": 0.3410576923076923,
"barrel": 9.317307692307693,
"ab_hard_contact": 0.2503383713495353,
"ab_bat_speed": 71.14565378677638,
"ab_strikeout_rate": 0.19802687444134812,
"available_players": 7,
"top_players": [
{
"player_id": "670541",
"player_name": "Yordan Alvarez",
"position": "DH",
"weight": 7.0,
"quality": 1.8475716222783507,
"contact": 2.0,
"power": 2.0,
"discipline": 1.1491769280102613,
"xwoba": 0.493,
"recent_xwoba": 0.493,
"barrel": 18.6,
"ab_hard_contact": 1.7509177924754051,
"ab_bat_speed": 75.27407611832611,
"ab_strikeout_rate": 0.17303030303030303,
"available": 1.0
},
{
"player_id": "701358",
"player_name": "Cam Smith",
"position": "RF",
"weight": 6.0,
"quality": 0.41137215361194013,
"contact": 0.2262974513222286,
"power": 0.7337403392630198,
"discipline": -0.2633858425525094,
"xwoba": 0.337,
"recent_xwoba": 0.337,
"barrel": 12.8,
"ab_hard_contact": 1.0995686900223025,
"ab_bat_speed": 75.12562626262627,
"ab_strikeout_rate": 0.2678787878787879,
"available": 1.0
},
{
"player_id": "572233",
"player_name": "Christian Walker",
"position": "1B",
"weight": 7.0,
"quality": 0.2863737428125568,
"contact": 0.18992323718081447,
"power": 0.6875374046911102,
"discipline": -0.22974370691037366,
"xwoba": 0.321,
"recent_xwoba": 0.321,
"barrel": 12.2,
"ab_hard_contact": 0.573224284298397,
"ab_bat_speed": 72.68959158249159,
"ab_strikeout_rate": 0.1908080808080808,
"available": 1.0
},
{
"player_id": "666211",
"player_name": "Taylor Trammell",
"position": "CF",
"weight": 5.0,
"quality": -0.19224650766134704,
"contact": -1.1487126775017251,
"power": -0.7359471452577833,
"discipline": -1.1508880070546736,
"xwoba": 0.262,
"recent_xwoba": 0.262,
"barrel": 4.9,
"ab_hard_contact": -0.22599052420328597,
"ab_bat_speed": 71.8291087962963,
"ab_strikeout_rate": 0.30416666666666664,
"available": 1.0
},
{
"player_id": "514888",
"player_name": "Jose Altuve",
"position": "2B",
"weight": 8.0,
"quality": -0.1929031765351816,
"contact": -0.1904133195085285,
"power": -0.41566172377194677,
"discipline": 0.23426278659611985,
"xwoba": 0.31,
"recent_xwoba": 0.31,
"barrel": 6.1,
"ab_hard_contact": -0.3414249516294059,
"ab_bat_speed": 66.86883267195768,
"ab_strikeout_rate": 0.1908730158730159,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "680570",
"player_name": "Grayson Rodriguez",
"quality": -0.2336467872365199,
"contact": -1.6782903657812593,
"command": -0.5491450965835024,
"movement": -0.27554629602483904,
"xwoba": 0.402,
"whiff": 21.9,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "LAA",
"original_runs": 3,
"run_delta": 0.2994,
"adjusted_runs": 3,
"lineup": {
"players_used": 7,
"total_weight": 39.0,
"quality": 0.3102561255372825,
"contact": 0.13326300434305774,
"power": 0.46646560316395036,
"discipline": 0.04486073186073187,
"xwoba": 0.33594871794871806,
"recent_xwoba": 0.33594871794871806,
"barrel": 11.364102564102565,
"ab_hard_contact": 0.037051585355325295,
"ab_bat_speed": 71.0065398814495,
"ab_strikeout_rate": 0.249014319014319,
"available_players": 6,
"top_players": [
{
"player_id": "545361",
"player_name": "Mike Trout",
"position": "CF",
"weight": 7.0,
"quality": 1.5289427676398615,
"contact": 1.2498404210191985,
"power": 2.0,
"discipline": 1.2276552829886165,
"xwoba": 0.416,
"recent_xwoba": 0.416,
"barrel": 20.9,
"ab_hard_contact": 1.1754195141530985,
"ab_bat_speed": 73.46554624819625,
"ab_strikeout_rate": 0.2509090909090909,
"available": 1.0
},
{
"player_id": "666176",
"player_name": "Jo Adell",
"position": "RF",
"weight": 7.0,
"quality": 0.46946029323553756,
"contact": 0.5707635982919267,
"power": 0.699431924139421,
"discipline": -0.9090070546737214,
"xwoba": 0.334,
"recent_xwoba": 0.334,
"barrel": 8.9,
"ab_hard_contact": 0.7202575304074469,
"ab_bat_speed": 75.8700483276644,
"ab_strikeout_rate": 0.2571428571428572,
"available": 1.0
},
{
"player_id": "681351",
"player_name": "Logan O'Hoppe",
"position": "C",
"weight": 5.0,
"quality": -0.3103380625699121,
"contact": -1.0346776242910467,
"power": -0.2872656119499547,
"discipline": -0.2685063331729999,
"xwoba": 0.276,
"recent_xwoba": 0.276,
"barrel": 11.5,
"ab_hard_contact": -0.8786455723324275,
"ab_bat_speed": 69.93682239057239,
"ab_strikeout_rate": 0.25707070707070706,
"available": 1.0
},
{
"player_id": "663611",
"player_name": "Nick Madrigal",
"position": "2B",
"weight": 3.0,
"quality": -0.0,
"contact": 0.3086000000000004,
"power": -1.0675999999999999,
"discipline": 1.4020714285714284,
"xwoba": 0.332,
"recent_xwoba": 0.332,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26396983685248,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
},
{
"player_id": "687263",
"player_name": "Zach Neto",
"position": "SS",
"weight": 8.0,
"quality": -0.036377132573296014,
"contact": -0.3416210926094353,
"power": 0.4004769694146635,
"discipline": -0.12336419753086417,
"xwoba": 0.322,
"recent_xwoba": 0.322,
"barrel": 11.8,
"ab_hard_contact": 0.03849176924565838,
"ab_bat_speed": 68.48744926303854,
"ab_strikeout_rate": 0.30178571428571427,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "681293",
"player_name": "Spencer Arrighetti",
"quality": -0.21481481968335212,
"contact": -0.01644509669943337,
"command": -0.3001450965835026,
"movement": -0.8366324805910492,
"xwoba": 0.347,
"whiff": 25.4,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 5,
"home_runs": 3,
"predicted_score_text": "HOU 5 - 3 LAA",
"confidence": 0.572241,
"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": 5,
"home_runs": 3,
"score_text": "HOU 5 - 3 LAA",
"winner": "HOU"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 2,
"score_text": "HOU 5 - 2 LAA",
"winner": "HOU"
},
"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 HOU | True | 1.0236 | 1.0236 | 1 | 9 | 0 |
| Home LAA | True | 1.0239 | 1.0308 | 0.7778 | 7 | 2 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SS | Jeremy Peña | 88 | 1.0334 | 0.4449 | neutral | 0.3750 | 0.3270 | 0.4800 | 5.10 | 32.30 | 86 | 13.50 | 25.40 | 13.40 | 6.30 | 0.7143 |
| 3B | Isaac Paredes | 101 | 0.9974 | -0.0342 | neutral | 0.3170 | 0.2400 | 0.3740 | 6.70 | 30.60 | 87.10 | 24.10 | 16.60 | 16.30 | 9.50 | -0.4857 |
| DH | Yordan Alvarez | 7 | 1.1500 | 2 | positive_batter_regression | 0.4930 | 0.3470 | 0.7370 | 18.60 | 54.20 | 94.90 | 19.10 | 19.60 | 17 | 15.30 | 1.1429 |
| 1B | Christian Walker | 56 | 1.0246 | 0.3282 | negative_batter_regression | 0.3210 | 0.2400 | 0.4290 | 12.20 | 45 | 90.20 | 14.10 | 29.90 | 21.20 | 8.10 | -0.8857 |
| 2B | Jose Altuve | 226 | 0.9955 | -0.0596 | neutral | 0.3100 | 0.2470 | 0.3670 | 6.10 | 36.80 | 86.30 | 8.50 | 25.50 | 20.20 | 10.40 | -0.3143 |
| LF | LaMonte Wade Jr. | 317 | 0.9929 | -0.0947 | negative_batter_regression | 0.2830 | 0.2130 | 0.4650 | 14.30 | 42.90 | 82.80 | -3.20 | 23.80 | 30 | 0 | -2 |
| RF | Cam Smith | 119 | 1.0545 | 0.7273 | positive_batter_regression | 0.3370 | 0.2430 | 0.4400 | 12.80 | 44 | 89 | 10.70 | 31.50 | 27.10 | 10.10 | 1.1143 |
| CF | Taylor Trammell | 240 | 0.9634 | -0.4884 | negative_batter_regression | 0.2620 | 0.2080 | 0.3040 | 4.90 | 31.70 | 89.20 | 7.80 | 40 | 33.80 | 7 | -2 |
| C | Collin Price | 367 | 1.0003 | 0.0040 | positive_batter_regression | 0.2830 | 0.0990 | 0.3330 | 0 | 100 | 96.80 | 33 | 66.70 | 40 | 20 | 2 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LF | Wade Meckler | 222 | 1.0197 | 0.2628 | negative_batter_regression | 0.3600 | 0.2770 | 0.4970 | 10.30 | 28.20 | 85.10 | 6.60 | 21.80 | 15.70 | 7.80 | -1.4857 |
| CF | Mike Trout | 27 | 1.1421 | 1.8951 | positive_batter_regression | 0.4160 | 0.2570 | 0.5650 | 20.90 | 51.60 | 91.70 | 20.20 | 22.40 | 24.20 | 20.50 | 1.2286 |
| SS | Zach Neto | 61 | 1.0155 | 0.2073 | neutral | 0.3220 | 0.2100 | 0.4090 | 11.80 | 37.30 | 89.80 | 22.60 | 30.30 | 30.20 | 11.80 | -0.6286 |
| RF | Jo Adell | 456 | 1.0595 | 0.7935 | positive_batter_regression | 0.3340 | 0.2700 | 0.4610 | 8.90 | 45.60 | 90.90 | 18.50 | 26 | 23.50 | 2.60 | 1.0286 |
| 2B | Nick Madrigal | 197 | 0.9943 | -0.0756 | negative_batter_regression | 0.3320 | 0.2760 | 0.3390 | 0 | 28.60 | 88.20 | 12.10 | 8.60 | 7.40 | 11.10 | -1.4857 |
| C | Logan O'Hoppe | 514 | 0.9835 | -0.2203 | neutral | 0.2760 | 0.1890 | 0.3260 | 11.50 | 36.50 | 86.50 | 16.60 | 29.70 | 23.80 | 8.80 | 0.5714 |
| DH | Donovan Walton | 351 | 1.0008 | 0.0100 | neutral | 0.2920 | 0.2490 | 0.3910 | 8.30 | 36.10 | 86.50 | 11.80 | 27.80 | 19.10 | 4.30 | 0.6571 |
{
"home": {
"applied": true,
"offense_factor": 1.0239,
"raw_average_factor": 1.0308,
"team_espn_average_rank": 261.14,
"coverage_weight": 0.7778,
"covered_batters": 7,
"missing_batters": 2,
"players": [
{
"position": "LF",
"player_id": "685133",
"player_name": "Wade Meckler",
"offense_factor": 1.0197,
"quality_score": 0.2628,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "685133",
"espn_id": 4424090,
"player_name": "Wade Meckler",
"team": "LAA",
"role": "batter",
"espn_rank": 222,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 222,
"gp_value": 15.0,
"gp_rank": "422",
"ab_value": 47.0,
"ab_rank": "402",
"r_value": 7.0,
"r_rank": "370",
"h_value": 16.0,
"h_rank": "351",
"avg_value": 0.3404255,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 10.0,
"rbi_rank": "298",
"tb_value": 26.0,
"tb_rank": "1792",
"bb_value": 4.0,
"bb_rank": "385",
"so_value": 8.0,
"so_rank": "442",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3921568,
"obp_rank": "-",
"slg_value": 0.5531914,
"slg_rank": "-",
"ops_value": 0.9453482,
"ops_rank": null,
"war_value": 0.34,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 17.0,
"k_percent": 15.7,
"bb_percent": 7.8,
"woba": 0.412,
"xwoba": 0.36,
"xba": 0.277,
"xslg": 0.497,
"sweet_spot_percent": 41.0,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 28.2,
"exit_velocity_avg": 85.1,
"launch_angle_avg": 6.6,
"whiff_percent": 21.8,
"swing_percent": 47.9
},
"components": {
"expected_quality": 0.9209,
"regression_edge": -1.4857,
"xwoba_edge": 1.5714,
"xba_edge": 1.0857,
"xslg_edge": 1.7571,
"barrel_edge": 0.7333,
"hard_hit_edge": -1.5214,
"exit_velocity_edge": -1.48,
"sweet_spot_edge": 1.2833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "545361",
"player_name": "Mike Trout",
"offense_factor": 1.1421,
"quality_score": 1.8951,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "545361",
"espn_id": 30836,
"player_name": "Mike Trout",
"team": "LAA",
"role": "batter",
"espn_rank": 27,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 27,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 230.0,
"ab_rank": "67",
"r_value": 47.0,
"r_rank": "3",
"h_value": 52.0,
"h_rank": "102",
"avg_value": 0.2260869,
"avg_rank": 134.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 14.0,
"hr_rank": "17",
"rbi_value": 31.0,
"rbi_rank": "68",
"tb_value": 104.0,
"tb_rank": "600",
"bb_value": 60.0,
"bb_rank": "1",
"so_value": 71.0,
"so_rank": "24",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3924914,
"obp_rank": "10",
"slg_value": 0.4521739,
"slg_rank": "55",
"ops_value": 0.8446653,
"ops_rank": 34.0,
"war_value": 2.38,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 238.0,
"k_percent": 24.2,
"bb_percent": 20.5,
"woba": 0.373,
"xwoba": 0.416,
"xba": 0.257,
"xslg": 0.565,
"sweet_spot_percent": 35.8,
"barrel_batted_rate": 20.9,
"hard_hit_percent": 51.6,
"exit_velocity_avg": 91.7,
"launch_angle_avg": 20.2,
"whiff_percent": 22.4,
"swing_percent": 37.7
},
"components": {
"expected_quality": 2.0036,
"regression_edge": 1.2286,
"xwoba_edge": 2.5,
"xba_edge": 0.5143,
"xslg_edge": 2.5,
"barrel_edge": 2.5,
"hard_hit_edge": 1.8214,
"exit_velocity_edge": 1.16,
"sweet_spot_edge": 0.4167,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "SS",
"player_id": "687263",
"player_name": "Zach Neto",
"offense_factor": 1.0155,
"quality_score": 0.2073,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687263",
"espn_id": 4666100,
"player_name": "Zach Neto",
"team": "LAA",
"role": "batter",
"espn_rank": 61,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 61,
"gp_value": 63.0,
"gp_rank": "50",
"ab_value": 247.0,
"ab_rank": "21",
"r_value": 44.0,
"r_rank": "9",
"h_value": 57.0,
"h_rank": "80",
"avg_value": 0.2307692,
"avg_rank": 127.0,
"2b_value": 14.0,
"2b_rank": "26",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 12.0,
"hr_rank": "35",
"rbi_value": 31.0,
"rbi_rank": "68",
"tb_value": 109.0,
"tb_rank": "327",
"bb_value": 34.0,
"bb_rank": "25",
"so_value": 87.0,
"so_rank": "5",
"sb_value": 10.0,
"sb_rank": "27",
"obp_value": 0.3368055,
"obp_rank": "75",
"slg_value": 0.4412955,
"slg_rank": "68",
"ops_value": 0.778101,
"ops_rank": 68.0,
"war_value": 1.6,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 253.0,
"k_percent": 30.2,
"bb_percent": 11.8,
"woba": 0.344,
"xwoba": 0.322,
"xba": 0.21,
"xslg": 0.409,
"sweet_spot_percent": 36.6,
"barrel_batted_rate": 11.8,
"hard_hit_percent": 37.3,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 22.6,
"whiff_percent": 30.3,
"swing_percent": 49.6
},
"components": {
"expected_quality": 0.3433,
"regression_edge": -0.6286,
"xwoba_edge": 0.4857,
"xba_edge": -0.8286,
"xslg_edge": 0.5,
"barrel_edge": 1.0667,
"hard_hit_edge": -0.2214,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.55,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "666176",
"player_name": "Jo Adell",
"offense_factor": 1.0595,
"quality_score": 0.7935,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "666176",
"espn_id": 40854,
"player_name": "Jo Adell",
"team": "LAA",
"role": "batter",
"espn_rank": 456,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 456,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 255.0,
"ab_rank": "13",
"r_value": 26.0,
"r_rank": "121",
"h_value": 62.0,
"h_rank": "47",
"avg_value": 0.2431372,
"avg_rank": 99.0,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 10.0,
"hr_rank": "49",
"rbi_value": 37.0,
"rbi_rank": "34",
"tb_value": 100.0,
"tb_rank": "711",
"bb_value": 7.0,
"bb_rank": "313",
"so_value": 64.0,
"so_rank": "40",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.2830882,
"obp_rank": "153",
"slg_value": 0.3921568,
"slg_rank": "113",
"ops_value": 0.675245,
"ops_rank": 129.0,
"war_value": -0.28,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 228.0,
"k_percent": 23.5,
"bb_percent": 2.6,
"woba": 0.298,
"xwoba": 0.334,
"xba": 0.27,
"xslg": 0.461,
"sweet_spot_percent": 32.6,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 45.6,
"exit_velocity_avg": 90.9,
"launch_angle_avg": 18.5,
"whiff_percent": 26.0,
"swing_percent": 55.8
},
"components": {
"expected_quality": 0.7552,
"regression_edge": 1.0286,
"xwoba_edge": 0.8286,
"xba_edge": 0.8857,
"xslg_edge": 1.2429,
"barrel_edge": 0.4222,
"hard_hit_edge": 0.9643,
"exit_velocity_edge": 0.84,
"sweet_spot_edge": -0.1167,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "2B",
"player_id": "663611",
"player_name": "Nick Madrigal",
"offense_factor": 0.9943,
"quality_score": -0.0756,
"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": 197,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 197,
"gp_value": 9.0,
"gp_rank": "477",
"ab_value": 23.0,
"ab_rank": "461",
"r_value": 4.0,
"r_rank": "412",
"h_value": 8.0,
"h_rank": "418",
"avg_value": 0.347826,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 1.0,
"rbi_rank": "476",
"tb_value": 9.0,
"tb_rank": "2443",
"bb_value": 3.0,
"bb_rank": "406",
"so_value": 2.0,
"so_rank": "512",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.4444444,
"obp_rank": "-",
"slg_value": 0.3913043,
"slg_rank": "-",
"ops_value": 0.8357487,
"ops_rank": null,
"war_value": 0.46,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 7.4,
"bb_percent": 11.1,
"woba": 0.384,
"xwoba": 0.332,
"xba": 0.276,
"xslg": 0.339,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 28.6,
"exit_velocity_avg": 88.2,
"launch_angle_avg": 12.1,
"whiff_percent": 8.6,
"swing_percent": 54.2
},
"components": {
"expected_quality": 0.0466,
"regression_edge": -1.4857,
"xwoba_edge": 0.7714,
"xba_edge": 1.0571,
"xslg_edge": -0.5,
"barrel_edge": -1.5556,
"hard_hit_edge": -1.4643,
"exit_velocity_edge": -0.24,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "681351",
"player_name": "Logan O'Hoppe",
"offense_factor": 0.9835,
"quality_score": -0.2203,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681351",
"espn_id": 42047,
"player_name": "Logan O'Hoppe",
"team": "LAA",
"role": "batter",
"espn_rank": 514,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 514,
"gp_value": 42.0,
"gp_rank": "260",
"ab_value": 130.0,
"ab_rank": "239",
"r_value": 15.0,
"r_rank": "247",
"h_value": 25.0,
"h_rank": "269",
"avg_value": 0.1923076,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 13.0,
"rbi_rank": "262",
"tb_value": 35.0,
"tb_rank": "1710",
"bb_value": 13.0,
"bb_rank": "212",
"so_value": 35.0,
"so_rank": "201",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2789115,
"obp_rank": "-",
"slg_value": 0.2692307,
"slg_rank": "-",
"ops_value": 0.5481422,
"ops_rank": null,
"war_value": -0.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 119.0,
"k_percent": 23.8,
"bb_percent": 8.8,
"woba": 0.256,
"xwoba": 0.276,
"xba": 0.189,
"xslg": 0.326,
"sweet_spot_percent": 27.1,
"barrel_batted_rate": 11.5,
"hard_hit_percent": 36.5,
"exit_velocity_avg": 86.5,
"launch_angle_avg": 16.6,
"whiff_percent": 29.7,
"swing_percent": 49.0
},
"components": {
"expected_quality": -0.5666,
"regression_edge": 0.5714,
"xwoba_edge": -0.8286,
"xba_edge": -1.4286,
"xslg_edge": -0.6857,
"barrel_edge": 1.0,
"hard_hit_edge": -0.3357,
"exit_velocity_edge": -0.92,
"sweet_spot_edge": -1.0333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "622268",
"player_name": "Donovan Walton",
"offense_factor": 1.0008,
"quality_score": 0.01,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "622268",
"espn_id": 37232,
"player_name": "Donovan Walton",
"team": "LAA",
"role": "batter",
"espn_rank": 351,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 351,
"gp_value": 13.0,
"gp_rank": "440",
"ab_value": 44.0,
"ab_rank": "407",
"r_value": 8.0,
"r_rank": "352",
"h_value": 11.0,
"h_rank": "384",
"avg_value": 0.25,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 1.0,
"rbi_rank": "476",
"tb_value": 14.0,
"tb_rank": "2322",
"bb_value": 2.0,
"bb_rank": "429",
"so_value": 9.0,
"so_rank": "429",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2826086,
"obp_rank": "-",
"slg_value": 0.3181818,
"slg_rank": "-",
"ops_value": 0.6007904,
"ops_rank": null,
"war_value": -0.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 19.0,
"k_percent": 19.1,
"bb_percent": 4.3,
"woba": 0.269,
"xwoba": 0.292,
"xba": 0.249,
"xslg": 0.391,
"sweet_spot_percent": 38.9,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 36.1,
"exit_velocity_avg": 86.5,
"launch_angle_avg": 11.8,
"whiff_percent": 27.8,
"swing_percent": 53.6
},
"components": {
"expected_quality": -0.0811,
"regression_edge": 0.6571,
"xwoba_edge": -0.3714,
"xba_edge": 0.2857,
"xslg_edge": 0.2429,
"barrel_edge": 0.2889,
"hard_hit_edge": -0.3929,
"exit_velocity_edge": -0.92,
"sweet_spot_edge": 0.9333,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0236,
"raw_average_factor": 1.0236,
"team_espn_average_rank": 169.0,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "SS",
"player_id": "665161",
"player_name": "Jeremy Peña",
"offense_factor": 1.0334,
"quality_score": 0.4449,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665161",
"espn_id": 41273,
"player_name": "Jeremy Pena",
"team": "HOU",
"role": "batter",
"espn_rank": 88,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 88,
"gp_value": 29.0,
"gp_rank": "347",
"ab_value": 115.0,
"ab_rank": "272",
"r_value": 22.0,
"r_rank": "168",
"h_value": 34.0,
"h_rank": "217",
"avg_value": 0.2956521,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 12.0,
"rbi_rank": "273",
"tb_value": 50.0,
"tb_rank": "1415",
"bb_value": 8.0,
"bb_rank": "293",
"so_value": 17.0,
"so_rank": "363",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.3543307,
"obp_rank": "-",
"slg_value": 0.4347826,
"slg_rank": "-",
"ops_value": 0.7891133,
"ops_rank": null,
"war_value": 1.28,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 86.0,
"k_percent": 13.4,
"bb_percent": 6.3,
"woba": 0.35,
"xwoba": 0.375,
"xba": 0.327,
"xslg": 0.48,
"sweet_spot_percent": 34.3,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 32.3,
"exit_velocity_avg": 86.0,
"launch_angle_avg": 13.5,
"whiff_percent": 25.4,
"swing_percent": 53.7
},
"components": {
"expected_quality": 1.0334,
"regression_edge": 0.7143,
"xwoba_edge": 2.0,
"xba_edge": 2.5,
"xslg_edge": 1.5143,
"barrel_edge": -0.4222,
"hard_hit_edge": -0.9357,
"exit_velocity_edge": -1.12,
"sweet_spot_edge": 0.1667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "670623",
"player_name": "Isaac Paredes",
"offense_factor": 0.9974,
"quality_score": -0.0342,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670623",
"espn_id": 39706,
"player_name": "Isaac Paredes",
"team": "HOU",
"role": "batter",
"espn_rank": 101,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 101,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 219.0,
"ab_rank": "99",
"r_value": 26.0,
"r_rank": "121",
"h_value": 53.0,
"h_rank": "96",
"avg_value": 0.2420091,
"avg_rank": 102.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 9.0,
"hr_rank": "60",
"rbi_value": 33.0,
"rbi_rank": "52",
"tb_value": 91.0,
"tb_rank": "704",
"bb_value": 24.0,
"bb_rank": "77",
"so_value": 41.0,
"so_rank": "155",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3333333,
"obp_rank": "82",
"slg_value": 0.4155251,
"slg_rank": "87",
"ops_value": 0.7488584,
"ops_rank": 88.0,
"war_value": 1.16,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 209.0,
"k_percent": 16.3,
"bb_percent": 9.5,
"woba": 0.334,
"xwoba": 0.317,
"xba": 0.24,
"xslg": 0.374,
"sweet_spot_percent": 36.1,
"barrel_batted_rate": 6.7,
"hard_hit_percent": 30.6,
"exit_velocity_avg": 87.1,
"launch_angle_avg": 24.1,
"whiff_percent": 16.6,
"swing_percent": 44.2
},
"components": {
"expected_quality": 0.0372,
"regression_edge": -0.4857,
"xwoba_edge": 0.3429,
"xba_edge": 0.0286,
"xslg_edge": 0.0,
"barrel_edge": -0.0667,
"hard_hit_edge": -1.1786,
"exit_velocity_edge": -0.68,
"sweet_spot_edge": 0.4667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "670541",
"player_name": "Yordan Alvarez",
"offense_factor": 1.15,
"quality_score": 2.0,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "670541",
"espn_id": 36018,
"player_name": "Yordan Alvarez",
"team": "HOU",
"role": "batter",
"espn_rank": 7,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 7,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 237.0,
"ab_rank": "42",
"r_value": 45.0,
"r_rank": "7",
"h_value": 75.0,
"h_rank": "4",
"avg_value": 0.3164556,
"avg_rank": 6.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 22.0,
"hr_rank": "2",
"rbi_value": 48.0,
"rbi_rank": "3",
"tb_value": 154.0,
"tb_rank": "381",
"bb_value": 44.0,
"bb_rank": "7",
"so_value": 49.0,
"so_rank": "106",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.4305555,
"obp_rank": "1",
"slg_value": 0.649789,
"slg_rank": "1",
"ops_value": 1.0803446,
"ops_rank": 1.0,
"war_value": 3.06,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 235.0,
"k_percent": 17.0,
"bb_percent": 15.3,
"woba": 0.453,
"xwoba": 0.493,
"xba": 0.347,
"xslg": 0.737,
"sweet_spot_percent": 46.3,
"barrel_batted_rate": 18.6,
"hard_hit_percent": 54.2,
"exit_velocity_avg": 94.9,
"launch_angle_avg": 19.1,
"whiff_percent": 19.6,
"swing_percent": 42.3
},
"components": {
"expected_quality": 2.4163,
"regression_edge": 1.1429,
"xwoba_edge": 2.5,
"xba_edge": 2.5,
"xslg_edge": 2.5,
"barrel_edge": 2.5,
"hard_hit_edge": 2.1929,
"exit_velocity_edge": 2.44,
"sweet_spot_edge": 2.1667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "1B",
"player_id": "572233",
"player_name": "Christian Walker",
"offense_factor": 1.0246,
"quality_score": 0.3282,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "572233",
"espn_id": 32758,
"player_name": "Christian Walker",
"team": "HOU",
"role": "batter",
"espn_rank": 56,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 56,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 246.0,
"ab_rank": "23",
"r_value": 39.0,
"r_rank": "34",
"h_value": 61.0,
"h_rank": "53",
"avg_value": 0.2479674,
"avg_rank": 88.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 16.0,
"hr_rank": "10",
"rbi_value": 46.0,
"rbi_rank": "7",
"tb_value": 122.0,
"tb_rank": "273",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 58.0,
"so_rank": "63",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3186813,
"obp_rank": "109",
"slg_value": 0.4959349,
"slg_rank": "29",
"ops_value": 0.8146162,
"ops_rank": 48.0,
"war_value": 1.66,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 227.0,
"k_percent": 21.2,
"bb_percent": 8.1,
"woba": 0.352,
"xwoba": 0.321,
"xba": 0.24,
"xslg": 0.429,
"sweet_spot_percent": 29.6,
"barrel_batted_rate": 12.2,
"hard_hit_percent": 45.0,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 14.1,
"whiff_percent": 29.9,
"swing_percent": 50.0
},
"components": {
"expected_quality": 0.5258,
"regression_edge": -0.8857,
"xwoba_edge": 0.4571,
"xba_edge": 0.0286,
"xslg_edge": 0.7857,
"barrel_edge": 1.1556,
"hard_hit_edge": 0.8786,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": -0.6167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "514888",
"player_name": "Jose Altuve",
"offense_factor": 0.9955,
"quality_score": -0.0596,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "514888",
"espn_id": 31662,
"player_name": "Jose Altuve",
"team": "HOU",
"role": "batter",
"espn_rank": 226,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 226,
"gp_value": 45.0,
"gp_rank": "236",
"ab_value": 170.0,
"ab_rank": "177",
"r_value": 29.0,
"r_rank": "93",
"h_value": 42.0,
"h_rank": "165",
"avg_value": 0.2470588,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 13.0,
"rbi_rank": "262",
"tb_value": 67.0,
"tb_rank": "1083",
"bb_value": 20.0,
"bb_rank": "123",
"so_value": 39.0,
"so_rank": "172",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.328125,
"obp_rank": "-",
"slg_value": 0.3941176,
"slg_rank": "-",
"ops_value": 0.7222426,
"ops_rank": null,
"war_value": 0.32,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 180.0,
"k_percent": 20.2,
"bb_percent": 10.4,
"woba": 0.321,
"xwoba": 0.31,
"xba": 0.247,
"xslg": 0.367,
"sweet_spot_percent": 33.1,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 36.8,
"exit_velocity_avg": 86.3,
"launch_angle_avg": 8.5,
"whiff_percent": 25.5,
"swing_percent": 46.8
},
"components": {
"expected_quality": -0.0336,
"regression_edge": -0.3143,
"xwoba_edge": 0.1429,
"xba_edge": 0.2286,
"xslg_edge": -0.1,
"barrel_edge": -0.2,
"hard_hit_edge": -0.2929,
"exit_velocity_edge": -1.0,
"sweet_spot_edge": -0.0333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "664774",
"player_name": "LaMonte Wade Jr.",
"offense_factor": 0.9929,
"quality_score": -0.0947,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "664774",
"espn_id": 37798,
"player_name": "LaMonte Wade Jr.",
"team": "HOU",
"role": "batter",
"espn_rank": 317,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 317,
"gp_value": 3.0,
"gp_rank": "521",
"ab_value": 10.0,
"ab_rank": "508",
"r_value": 2.0,
"r_rank": "455",
"h_value": 3.0,
"h_rank": "475",
"avg_value": 0.3,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 3.0,
"rbi_rank": "427",
"tb_value": 7.0,
"tb_rank": "2251",
"bb_value": 0.0,
"bb_rank": "503",
"so_value": 3.0,
"so_rank": "499",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3,
"obp_rank": "-",
"slg_value": 0.7,
"slg_rank": "-",
"ops_value": 1.0,
"ops_rank": null,
"war_value": 0.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 30.0,
"bb_percent": 0.0,
"woba": 0.424,
"xwoba": 0.283,
"xba": 0.213,
"xslg": 0.465,
"sweet_spot_percent": 57.1,
"barrel_batted_rate": 14.3,
"hard_hit_percent": 42.9,
"exit_velocity_avg": 82.8,
"launch_angle_avg": -3.2,
"whiff_percent": 23.8,
"swing_percent": 47.7
},
"components": {
"expected_quality": 0.081,
"regression_edge": -2.0,
"xwoba_edge": -0.6286,
"xba_edge": -0.7429,
"xslg_edge": 1.3,
"barrel_edge": 1.6222,
"hard_hit_edge": 0.5786,
"exit_velocity_edge": -2.4,
"sweet_spot_edge": 2.5,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "701358",
"player_name": "Cam Smith",
"offense_factor": 1.0545,
"quality_score": 0.7273,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "701358",
"espn_id": 5080766,
"player_name": "Cam Smith",
"team": "HOU",
"role": "batter",
"espn_rank": 119,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 119,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 215.0,
"ab_rank": "103",
"r_value": 26.0,
"r_rank": "121",
"h_value": 47.0,
"h_rank": "134",
"avg_value": 0.2186046,
"avg_rank": 148.0,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 24.0,
"rbi_rank": "140",
"tb_value": 75.0,
"tb_rank": "782",
"bb_value": 25.0,
"bb_rank": "69",
"so_value": 67.0,
"so_rank": "31",
"sb_value": 8.0,
"sb_rank": "47",
"obp_value": 0.308943,
"obp_rank": "124",
"slg_value": 0.3488372,
"slg_rank": "140",
"ops_value": 0.6577802,
"ops_rank": 138.0,
"war_value": 0.98,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 210.0,
"k_percent": 27.1,
"bb_percent": 10.1,
"woba": 0.298,
"xwoba": 0.337,
"xba": 0.243,
"xslg": 0.44,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 12.8,
"hard_hit_percent": 44.0,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 10.7,
"whiff_percent": 31.5,
"swing_percent": 46.0
},
"components": {
"expected_quality": 0.7045,
"regression_edge": 1.1143,
"xwoba_edge": 0.9143,
"xba_edge": 0.1143,
"xslg_edge": 0.9429,
"barrel_edge": 1.2889,
"hard_hit_edge": 0.7357,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": -0.3333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "666211",
"player_name": "Taylor Trammell",
"offense_factor": 0.9634,
"quality_score": -0.4884,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "666211",
"espn_id": 37773,
"player_name": "Taylor Trammell",
"team": "HOU",
"role": "batter",
"espn_rank": 240,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 240,
"gp_value": 21.0,
"gp_rank": "387",
"ab_value": 64.0,
"ab_rank": "370",
"r_value": 8.0,
"r_rank": "352",
"h_value": 19.0,
"h_rank": "327",
"avg_value": 0.296875,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 6.0,
"rbi_rank": "364",
"tb_value": 25.0,
"tb_rank": "1974",
"bb_value": 5.0,
"bb_rank": "358",
"so_value": 24.0,
"so_rank": "294",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3571428,
"obp_rank": "-",
"slg_value": 0.390625,
"slg_rank": "-",
"ops_value": 0.7477678,
"ops_rank": null,
"war_value": 0.27,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 42.0,
"k_percent": 33.8,
"bb_percent": 7.0,
"woba": 0.335,
"xwoba": 0.262,
"xba": 0.208,
"xslg": 0.304,
"sweet_spot_percent": 26.8,
"barrel_batted_rate": 4.9,
"hard_hit_percent": 31.7,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 7.8,
"whiff_percent": 40.0,
"swing_percent": 46.6
},
"components": {
"expected_quality": -0.9364,
"regression_edge": -2.0,
"xwoba_edge": -1.2286,
"xba_edge": -0.8857,
"xslg_edge": -1.0,
"barrel_edge": -0.4667,
"hard_hit_edge": -1.0214,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": -1.0833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "805672",
"player_name": "Collin Price",
"offense_factor": 1.0003,
"quality_score": 0.004,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "805672",
"espn_id": 4425208,
"player_name": "Collin Price",
"team": "HOU",
"role": "batter",
"espn_rank": 367,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 367,
"gp_value": 2.0,
"gp_rank": "530",
"ab_value": 4.0,
"ab_rank": "529",
"r_value": 0.0,
"r_rank": "516",
"h_value": 0.0,
"h_rank": "531",
"avg_value": 0.0,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 0.0,
"rbi_rank": "501",
"tb_value": 0.0,
"tb_rank": "2614",
"bb_value": 1.0,
"bb_rank": "459",
"so_value": 2.0,
"so_rank": "512",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2,
"obp_rank": "-",
"slg_value": 0.0,
"slg_rank": "-",
"ops_value": 0.2,
"ops_rank": null,
"war_value": -0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 40.0,
"bb_percent": 20.0,
"woba": 0.14,
"xwoba": 0.283,
"xba": 0.099,
"xslg": 0.333,
"sweet_spot_percent": 50.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 100.0,
"exit_velocity_avg": 96.8,
"launch_angle_avg": 33.0,
"whiff_percent": 66.7,
"swing_percent": 56.3
},
"components": {
"expected_quality": -0.3152,
"regression_edge": 2.0,
"xwoba_edge": -0.6286,
"xba_edge": -2.5,
"xslg_edge": -0.5857,
"barrel_edge": -1.5556,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.5,
"sweet_spot_edge": 2.5,
"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 HOU | True | 21 | -0.2755 | 0.7880 | 1.0234 | 0.9905 | 1.0520 | 0.9646 | negative_pitcher_regression | 0.3470 | 0.2800 | 21.20 | 12.40 | 25.40 | 5.90 | 29.60 | |
| Home LAA | True | 659 | -0.5318 | 0.4500 | 1.0452 | 0.9820 | 1.0333 | 1.0887 | neutral | 0.4020 | 0.4060 | 19.80 | 12.80 | 21.90 | 10.30 | 50 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away HOU | True | None | 93 | 84.40 | 2477 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2800 | |
| Home LAA | True | None | 88 | 89.81 | 2273 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0054 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0203 |
| home_runs_vs_away_pitcher | 1.0184 |
| home_pitcher_quality_edge | -0.2563 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "680570",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 55.0,
"k_percent": 19.8,
"bb_percent": 12.8,
"woba": 0.406,
"xwoba": 0.402,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 50.0,
"avg_best_speed": 81.1675,
"avg_hyper_speed": 95.1168,
"whiff_percent": 21.9,
"swing_percent": 45.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.8625,
"command_and_miss": -0.5793,
"regression_edge": 0.1143,
"xwoba_edge": -2.5,
"barrel_edge": -0.7111,
"hard_hit_edge": -1.6286,
"whiff_edge": -0.5571,
"bb_edge": -0.925,
"pitch_design_score": 0.0054
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680570",
"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": 89.80741657077101,
"release_spin_rate": 2272.6327867280397,
"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": 89.80741657077101,
"release_spin_rate": 2272.6327867280397,
"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.8074,
"release_spin_rate": 2272.6328,
"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.0054,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0389,
"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.5318,
"sample_weight": 0.45,
"run_prevention_factor": 1.0452,
"strikeout_factor": 0.982,
"walk_factor": 1.0333,
"homer_factor": 1.0887,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680570",
"espn_id": 41196,
"player_name": "Grayson Rodriguez",
"team": "LAA",
"role": "pitcher",
"espn_rank": 659,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 659,
"gp_value": 4.0,
"gp_rank": 490,
"gs_value": 4.0,
"gs_rank": 166,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 9.5,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 18.0,
"ip_rank": 378,
"h_value": 23.0,
"h_rank": 252,
"er_value": 19.0,
"er_rank": 138,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 11.0,
"bb_rank": 236,
"k_value": 17.0,
"k_rank": 352,
"k_per_9_value": 8.5,
"k_per_9_rank": 25,
"whip_value": 1.8888,
"whip_rank": null,
"war_value": -0.67,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "681293",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 197.0,
"k_percent": 21.2,
"bb_percent": 12.4,
"woba": 0.28,
"xwoba": 0.347,
"sweet_spot_percent": 38.5,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 29.6,
"avg_best_speed": 77.6578,
"avg_hyper_speed": 92.5066,
"whiff_percent": 25.4,
"swing_percent": 42.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1059,
"command_and_miss": -0.2943,
"regression_edge": -1.9143,
"xwoba_edge": -0.9286,
"barrel_edge": 0.2667,
"hard_hit_edge": 1.2857,
"whiff_edge": -0.0571,
"bb_edge": -0.825,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "681293",
"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": 84.4016684839299,
"release_spin_rate": 2476.7273774138216,
"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": 84.4016684839299,
"release_spin_rate": 2476.7273774138216,
"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.4017,
"release_spin_rate": 2476.7274,
"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.2755,
"sample_weight": 0.788,
"run_prevention_factor": 1.0234,
"strikeout_factor": 0.9905,
"walk_factor": 1.052,
"homer_factor": 0.9646,
"woba_minus_xwoba": -0.067,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "681293",
"espn_id": 4726080,
"player_name": "Spencer Arrighetti",
"team": "HOU",
"role": "pitcher",
"espn_rank": 21,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 21,
"gp_value": 9.0,
"gp_rank": 386,
"gs_value": 9.0,
"gs_rank": 112,
"qs_value": 4.0,
"qs_rank": 61,
"era_value": 1.9411,
"era_rank": null,
"w_value": 7.0,
"w_rank": 6,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 51.0,
"ip_rank": 119,
"h_value": 33.0,
"h_rank": 159,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 27.0,
"bb_rank": 22,
"k_value": 46.0,
"k_rank": 111,
"k_per_9_value": 8.117647,
"k_per_9_rank": 25,
"whip_value": 1.1764,
"whip_rank": null,
"war_value": 1.88,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0203,
"home_runs_vs_away_pitcher": 1.0184,
"home_pitcher_quality_edge": -0.2563
},
"score_before": {
"away_runs": 6.5968,
"home_runs": 0.888
},
"score_after": {
"away_runs": 6.7309,
"home_runs": 0.9044,
"home_win_probability": 0.08
},
"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 HOU | 20-40 | 0.333 | 1.50 | 4.30 | -170 | cold | average | |
| Home LAA | 13-45 | 0.224 | 1.50 | 4.30 | -161 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away HOU | 30-37 | 0.448 | -29 | -0.433 | True |
| Home LAA | 25-41 | 0.379 | -51 | -0.773 | True |
| Signal | - | - | -0.340 | -0.443 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target HOU | - | - | 5 | - | - | - | - |
| Game target LAA | - | - | 3 | - | - | - | - |
| Player finalized HOU | 52 | 14 | 9 | 1 | 7 | 7 | 13 |
| Player finalized LAA | 47 | 11 | 7 | 1 | 6 | 3 | 12 |
| Player model fractional HOU | 50.77 | 13.21 | 8.39 | 2.36 | 7.91 | 5.71 | 12.28 |
| Player model fractional LAA | 46.17 | 10.93 | 6.94 | 1.70 | 5.74 | 5.06 | 11.52 |
| Simulation box HOU | 40 | 13 | 5 | 0 | 5 | 5 | 5 |
| Simulation box LAA | 30 | 4 | 2 | 0 | 2 | 5 | 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 HOU | Starter | Spencer Arrighetti | 6.20 | 1 | 6 | 3 | 3 | 2.80 | 1.19 | True |
| Away HOU | Middle Reliever | Bryan King | 1 | 0 | 2 | 0 | 1 | 3.10 | 1.34 | True |
| Away HOU | Middle Reliever | Enyel De Los Santos | 1.10 | 1 | 1 | 1 | 1 | 2.57 | 0.91 | True |
| Away HOU | Middle Reliever | Josh Hader | 0 | 0 | 0 | 0 | 0 | 4.04 | 1.26 | True |
| Home LAA | Starter | Grayson Rodriguez | 4.10 | 5 | 2 | 10 | 3 | 6.65 | 1.57 | True |
| Home LAA | Middle Reliever | Chase Silseth | 1.10 | 0 | 0 | 0 | 0 | 2.45 | 1.19 | True |
| Home LAA | Middle Reliever | Drew Pomeranz | 1 | 0 | 1 | 1 | 1 | 2.89 | 1.54 | True |
| Home LAA | Middle Reliever | Kirby Yates | 1.10 | 0 | 0 | 1 | 1 | 3.92 | 1.26 | True |
| Home LAA | Middle Reliever | Sam Bachman | 1 | 0 | 2 | 1 | 0 | 2.24 | 1.26 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | HOU | batter | LF | LaMonte Wade Jr. | better | 10 | 7 | 3 | 8 | 2 | predicted_H | 2.1600 | boost | better |
| home | LAA | batter | 2B | Nick Madrigal | worse | 11 | 3 | 8 | 2 | 9 | predicted_SO | 1.7500 | boost | worse |
| home | LAA | batter | LF | Wade Meckler | better | 9 | 5 | 4 | 6 | 3 | predicted_BB | 1.7410 | boost | better |
| away | HOU | batter | CF | Taylor Trammell | better | 11 | 7 | 4 | 6 | 5 | predicted_H | 1.7200 | boost | better |
| home | LAA | batter | SS | Zach Neto | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.6080 | boost | worse |
| away | HOU | batter | RF | Cam Smith | worse | 9 | 2 | 7 | 3 | 6 | predicted_AB | 1.4980 | boost | better |
| away | HOU | batter | C | Collin Price | worse | 9 | 3 | 6 | 4 | 5 | predicted_SO | -1.2500 | deboost | better |
| away | HOU | batter | DH | Yordan Alvarez | worse | 10 | 5 | 5 | 4 | 6 | predicted_H | -1.1400 | deboost | worse |
| home | LAA | batter | DH | Donovan Walton | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 1.0740 | boost | worse |
| away | HOU | batter | 1B | Christian Walker | better | 10 | 7 | 3 | 8 | 2 | predicted_H | 1.0500 | boost | better |
| away | HOU | batter | 2B | Jose Altuve | better | 11 | 5 | 6 | 6 | 5 | predicted_AB | 1.0500 | boost | better |
| away | HOU | pitcher | Starter | Spencer Arrighetti | neutral | 2 | 1 | 1 | 1 | 1 | predicted_SO | 1.0000 | boost | better |
| away | HOU | pitcher | Middle Reliever | Josh Hader | worse | 2 | 0 | 2 | 0 | 2 | predicted_SO | -1.0000 | deboost | worse |
| home | LAA | batter | 3B | Denzer Guzman | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_3B | 0.9900 | boost | better |
| home | LAA | batter | RF | Jo Adell | worse | 10 | 1 | 9 | 2 | 8 | predicted_SO | -0.9880 | deboost | better |
| home | LAA | batter | CF | Mike Trout | worse | 9 | 1 | 8 | 1 | 8 | predicted_AB | -0.9800 | deboost | worse |
| home | LAA | batter | 1B | Trey Mancini | worse | 10 | 2 | 8 | 3 | 7 | predicted_H | -0.9570 | deboost | worse |
| away | HOU | batter | SS | Jeremy Peña | better | 11 | 7 | 4 | 6 | 5 | predicted_H | 0.8100 | boost | better |
| home | LAA | batter | C | Logan O'Hoppe | worse | 11 | 3 | 8 | 2 | 9 | predicted_BB | 0.6170 | boost | better |
| away | HOU | batter | 3B | Isaac Paredes | better | 11 | 9 | 2 | 8 | 3 | predicted_BB | 0.5890 | boost | better |
| home | LAA | pitcher | Starter | Grayson Rodriguez | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.5667 | deboost | worse |
| away | HOU | pitcher | Middle Reliever | Enyel De Los Santos | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | LAA | pitcher | Middle Reliever | Chase Silseth | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | 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 | Spencer Arrighetti |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.2755 |
| ESPN Rank | 21 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 84.4017 |
| Avg Spin | 2476.7274 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6.2000 |
| Pre ER | 1 |
| Pre H | 3 |
| Pre BB | 3 |
| Pre SO | 6 |
| Season ERA | 1.9412 |
| Season WHIP | 1.1765 |
| Role Avg IP | 5.6670 |
| Recent Avg IP | 5.6000 |
| Last Start IP | 4 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"opponent": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"edges": {
"quality_edge": 0.0964,
"offense_edge": 0.0092,
"opponent_offense_edge": -0.003,
"defense_strength": -0.0875,
"opponent_defense_weakness": 0.1307,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0014,
"run_prevention": 1.0034,
"strikeout": 1.0031
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "681293",
"profile": {
"available": true,
"pitcher_id": "681293",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 197.0,
"k_percent": 21.2,
"bb_percent": 12.4,
"woba": 0.28,
"xwoba": 0.347,
"sweet_spot_percent": 38.5,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 29.6,
"avg_best_speed": 77.6578,
"avg_hyper_speed": 92.5066,
"whiff_percent": 25.4,
"swing_percent": 42.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1059,
"command_and_miss": -0.2943,
"regression_edge": -1.9143,
"xwoba_edge": -0.9286,
"barrel_edge": 0.2667,
"hard_hit_edge": 1.2857,
"whiff_edge": -0.0571,
"bb_edge": -0.825,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "681293",
"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": 84.4016684839299,
"release_spin_rate": 2476.7273774138216,
"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": 84.4016684839299,
"release_spin_rate": 2476.7273774138216,
"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.4017,
"release_spin_rate": 2476.7274,
"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.2755,
"sample_weight": 0.788,
"run_prevention_factor": 1.0234,
"strikeout_factor": 0.9905,
"walk_factor": 1.052,
"homer_factor": 0.9646,
"woba_minus_xwoba": -0.067,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "681293",
"espn_id": 4726080,
"player_name": "Spencer Arrighetti",
"team": "HOU",
"role": "pitcher",
"espn_rank": 21,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 21,
"gp_value": 9.0,
"gp_rank": 386,
"gs_value": 9.0,
"gs_rank": 112,
"qs_value": 4.0,
"qs_rank": 61,
"era_value": 1.9411,
"era_rank": null,
"w_value": 7.0,
"w_rank": 6,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 51.0,
"ip_rank": 119,
"h_value": 33.0,
"h_rank": 159,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 27.0,
"bb_rank": 22,
"k_value": 46.0,
"k_rank": 111,
"k_per_9_value": 8.117647,
"k_per_9_rank": 25,
"whip_value": 1.1764,
"whip_rank": null,
"war_value": 1.88,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0184,
"adjusted": 1
},
"predicted_H": {
"original": 4.0,
"factor": 1.0184,
"adjusted": 4
},
"predicted_BB": {
"original": 3.0,
"factor": 1.041,
"adjusted": 3
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9721,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9925,
"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.0,
"ER": 11,
"H": 33,
"BB": 27,
"SO": 46,
"HR": 3,
"ERA": 1.9411764705882353,
"WHIP": 1.1764705882352942,
"K9": 8.117647058823529,
"HR9": 0.5294117647058824,
"games_pitched": 9,
"quality_starts": 4,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 2,
"assists": 0,
"games_fielded": 9,
"error_prone": false
},
"games_count": 9,
"latest_game_date": "2026-06-03T00:00:00"
}{
"available": true,
"pitcher_id": "681293",
"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": 84.4016684839299,
"release_spin_rate": 2476.7273774138216,
"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": 84.4016684839299,
"release_spin_rate": 2476.7273774138216,
"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.4017,
"release_spin_rate": 2476.7274,
"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.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": "681293",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 9,
"reference_playing_time": 6.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 28.0,
"ER": 6.0,
"R": 8.0,
"H": 17.0,
"BB": 13.0,
"SO": 21.0,
"HR": 2.0,
"BF": 116.0,
"Pitches": 461.0
},
"per_game": {
"IP": 5.2,
"ER": 1.2,
"R": 1.6,
"H": 3.4,
"BB": 2.6,
"SO": 4.2,
"HR": 0.4,
"BF": 23.2,
"Pitches": 92.2
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.0714,
"ER_per_IP": 0.21429,
"H_per_IP": 0.60714,
"BB_per_IP": 0.46429,
"SO_per_IP": 0.75,
"HR_per_IP": 0.07143
}
},
"last_10": {
"games": 9,
"totals": {
"IP": 51.0,
"ER": 11.0,
"R": 13.0,
"H": 33.0,
"BB": 27.0,
"SO": 46.0,
"HR": 3.0,
"BF": 217.0,
"Pitches": 840.0
},
"per_game": {
"IP": 5.2,
"ER": 1.2222,
"R": 1.4444,
"H": 3.6667,
"BB": 3.0,
"SO": 5.1111,
"HR": 0.3333,
"BF": 24.1111,
"Pitches": 93.3333
},
"rates": {
"ERA": 1.9412,
"WHIP": 1.1765,
"ER_per_IP": 0.21569,
"H_per_IP": 0.64706,
"BB_per_IP": 0.52941,
"SO_per_IP": 0.90196,
"HR_per_IP": 0.05882
}
},
"season": {
"games": 9,
"totals": {
"IP": 51.0,
"ER": 11.0,
"R": 13.0,
"H": 33.0,
"BB": 27.0,
"SO": 46.0,
"HR": 3.0,
"BF": 217.0,
"Pitches": 840.0
},
"per_game": {
"IP": 5.2,
"ER": 1.2222,
"R": 1.4444,
"H": 3.6667,
"BB": 3.0,
"SO": 5.1111,
"HR": 0.3333,
"BF": 24.1111,
"Pitches": 93.3333
},
"rates": {
"ERA": 1.9412,
"WHIP": 1.1765,
"ER_per_IP": 0.21569,
"H_per_IP": 0.64706,
"BB_per_IP": 0.52941,
"SO_per_IP": 0.90196,
"HR_per_IP": 0.05882
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 1.875,
"predicted_H": 4.47,
"predicted_BB": 2.679,
"predicted_SO": 5.14,
"predicted_HR": 0.557,
"predicted_ERA": 2.8012,
"predicted_WHIP": 1.1868
}
}{
"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": 6.2,
"form": 6.0,
"final": 6.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 1.875,
"final": 1.4367,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 4.47,
"final": 3.7337,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 2.679,
"final": 2.8398,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 5.14,
"final": 5.0699,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.557,
"final": 0.278,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.8012,
"final": 2.8012,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1868,
"final": 1.1868,
"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 | Bryan King |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0589 |
| ESPN Rank | 146 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0626 |
| Avg Velo | 88.5925 |
| Avg Spin | 2105.2170 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 2 |
| Season ERA | 2.6341 |
| Season WHIP | 1.3171 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"opponent": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"edges": {
"quality_edge": 0.0964,
"offense_edge": 0.0092,
"opponent_offense_edge": -0.003,
"defense_strength": -0.0875,
"opponent_defense_weakness": 0.1307,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0014,
"run_prevention": 1.0034,
"strikeout": 1.0031
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "687911",
"profile": {
"available": true,
"pitcher_id": "687911",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 102.0,
"k_percent": 17.8,
"bb_percent": 9.3,
"woba": 0.296,
"xwoba": 0.294,
"sweet_spot_percent": 28.9,
"barrel_batted_rate": 2.4,
"hard_hit_percent": 37.3,
"avg_best_speed": 76.464,
"avg_hyper_speed": 93.182,
"whiff_percent": 18.0,
"swing_percent": 48.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5705,
"command_and_miss": -0.7279,
"regression_edge": 0.0571,
"xwoba_edge": 0.5857,
"barrel_edge": 1.0444,
"hard_hit_edge": 0.1857,
"whiff_edge": -1.1143,
"bb_edge": -0.05,
"pitch_design_score": -0.0626
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "687911",
"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": 88.59250053146236,
"release_spin_rate": 2105.216952554819,
"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": 88.59250053146236,
"release_spin_rate": 2105.216952554819,
"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.5925,
"release_spin_rate": 2105.217,
"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.0626,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.4471,
"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.0589,
"sample_weight": 0.45,
"run_prevention_factor": 0.995,
"strikeout_factor": 0.9668,
"walk_factor": 1.0018,
"homer_factor": 0.9511,
"woba_minus_xwoba": 0.002,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687911",
"espn_id": 5201821,
"player_name": "Bryan King",
"team": "HOU",
"role": "pitcher",
"espn_rank": 146,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 146,
"gp_value": 24.0,
"gp_rank": 109,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.6341,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 6.0,
"sv_rank": 21,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 27.1,
"ip_rank": 241,
"h_value": 25.0,
"h_rank": 224,
"er_value": 8.0,
"er_rank": 349,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 11.0,
"bb_rank": 236,
"k_value": 21.0,
"k_rank": 310,
"k_per_9_value": 6.9146338,
"k_per_9_rank": 34,
"whip_value": 1.317,
"whip_rank": null,
"war_value": 0.64,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9978,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9978,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0008,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.978,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9851,
"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": 8,
"BB": 6,
"SO": 6,
"HR": 1,
"ERA": 1.6875,
"WHIP": 1.3125,
"K9": 5.0625,
"HR9": 0.84375,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "687911",
"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": 88.59250053146236,
"release_spin_rate": 2105.216952554819,
"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": 88.59250053146236,
"release_spin_rate": 2105.216952554819,
"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.5925,
"release_spin_rate": 2105.217,
"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.0626,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.4471,
"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.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"role": "pitcher",
"player_id": "687911",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 2.0,
"SO": 4.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 94.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.4,
"SO": 0.8,
"HR": 0.2,
"BF": 4.2,
"Pitches": 18.8
},
"rates": {
"ERA": 1.8,
"WHIP": 1.4,
"ER_per_IP": 0.2,
"H_per_IP": 1.0,
"BB_per_IP": 0.4,
"SO_per_IP": 0.8,
"HR_per_IP": 0.2
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 2.0,
"R": 2.0,
"H": 8.0,
"BB": 6.0,
"SO": 6.0,
"HR": 1.0,
"BF": 45.0,
"Pitches": 200.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.6,
"SO": 0.6,
"HR": 0.1,
"BF": 4.5,
"Pitches": 20.0
},
"rates": {
"ERA": 1.6875,
"WHIP": 1.3125,
"ER_per_IP": 0.1875,
"H_per_IP": 0.75,
"BB_per_IP": 0.5625,
"SO_per_IP": 0.5625,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 24,
"totals": {
"IP": 27.1,
"ER": 8.0,
"R": 10.0,
"H": 25.0,
"BB": 11.0,
"SO": 21.0,
"HR": 1.0,
"BF": 118.0,
"Pitches": 478.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3333,
"R": 0.4167,
"H": 1.0417,
"BB": 0.4583,
"SO": 0.875,
"HR": 0.0417,
"BF": 4.9167,
"Pitches": 19.9167
},
"rates": {
"ERA": 2.6341,
"WHIP": 1.3171,
"ER_per_IP": 0.29268,
"H_per_IP": 0.91463,
"BB_per_IP": 0.40244,
"SO_per_IP": 0.76829,
"HR_per_IP": 0.03659
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.344,
"predicted_H": 0.925,
"predicted_BB": 0.413,
"predicted_SO": 0.818,
"predicted_HR": 0.135,
"predicted_ERA": 3.0989,
"predicted_WHIP": 1.338
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5532,
"form_weight": 0.4468,
"form_reliability": 0.5191,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.344,
"final": 0.1537,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.925,
"final": 0.4133,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.413,
"final": 0.7377,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.818,
"final": 1.4719,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.135,
"final": 0.0603,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.0989,
"final": 3.0989,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.338,
"final": 1.338,
"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 | Enyel De Los Santos |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2988 |
| ESPN Rank | 208 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0001 |
| Avg Velo | 89.7115 |
| Avg Spin | 2101.6931 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 3 |
| Season WHIP | 0.9259 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"opponent": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"edges": {
"quality_edge": 0.0964,
"offense_edge": 0.0092,
"opponent_offense_edge": -0.003,
"defense_strength": -0.0875,
"opponent_defense_weakness": 0.1307,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0014,
"run_prevention": 1.0034,
"strikeout": 1.0031
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "660853",
"profile": {
"available": true,
"pitcher_id": "660853",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 95.0,
"k_percent": 25.2,
"bb_percent": 4.7,
"woba": 0.235,
"xwoba": 0.255,
"sweet_spot_percent": 36.0,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 37.3,
"avg_best_speed": 78.6849,
"avg_hyper_speed": 93.7484,
"whiff_percent": 29.2,
"swing_percent": 54.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.038,
"command_and_miss": 0.5379,
"regression_edge": -0.5714,
"xwoba_edge": 1.7,
"barrel_edge": 0.4,
"hard_hit_edge": 0.1857,
"whiff_edge": 0.4857,
"bb_edge": 1.1,
"pitch_design_score": 0.0001
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "660853",
"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": 89.71152464183415,
"release_spin_rate": 2101.6930941773076,
"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": 89.71152464183415,
"release_spin_rate": 2101.6930941773076,
"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.7115,
"release_spin_rate": 2101.6931,
"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.0001,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0005,
"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.2988,
"sample_weight": 0.45,
"run_prevention_factor": 0.9746,
"strikeout_factor": 1.0147,
"walk_factor": 0.9604,
"homer_factor": 0.9593,
"woba_minus_xwoba": -0.02,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "660853",
"espn_id": 35026,
"player_name": "Enyel De Los Santos",
"team": "HOU",
"role": "pitcher",
"espn_rank": 208,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 208,
"gp_value": 25.0,
"gp_rank": 92,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.0,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 4.0,
"sv_rank": 27,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 27.0,
"ip_rank": 248,
"h_value": 20.0,
"h_rank": 291,
"er_value": 9.0,
"er_rank": 314,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 5.0,
"bb_rank": 443,
"k_value": 27.0,
"k_rank": 242,
"k_per_9_value": 9.0,
"k_per_9_rank": 26,
"whip_value": 0.9259,
"whip_rank": null,
"war_value": 0.38,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9886,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9886,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9822,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9817,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0066,
"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.0,
"ER": 1,
"H": 5,
"BB": 1,
"SO": 13,
"HR": 0,
"ERA": 0.818181818181818,
"WHIP": 0.5454545454545454,
"K9": 10.636363636363635,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "660853",
"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": 89.71152464183415,
"release_spin_rate": 2101.6930941773076,
"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": 89.71152464183415,
"release_spin_rate": 2101.6930941773076,
"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.7115,
"release_spin_rate": 2101.6931,
"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.0001,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0005,
"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.332,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.516,
"prior_weight": 0.484
},
"role": "pitcher",
"player_id": "660853",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 1.0,
"SO": 9.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 79.0
},
"per_game": {
"IP": 1.1,
"ER": 0.0,
"R": 0.0,
"H": 0.2,
"BB": 0.2,
"SO": 1.8,
"HR": 0.0,
"BF": 4.0,
"Pitches": 15.8
},
"rates": {
"ERA": 0.0,
"WHIP": 0.3333,
"ER_per_IP": 0.0,
"H_per_IP": 0.16667,
"BB_per_IP": 0.16667,
"SO_per_IP": 1.5,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.0,
"ER": 1.0,
"R": 2.0,
"H": 5.0,
"BB": 1.0,
"SO": 13.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 138.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.2,
"H": 0.5,
"BB": 0.1,
"SO": 1.3,
"HR": 0.0,
"BF": 4.0,
"Pitches": 13.8
},
"rates": {
"ERA": 0.8182,
"WHIP": 0.5455,
"ER_per_IP": 0.09091,
"H_per_IP": 0.45455,
"BB_per_IP": 0.09091,
"SO_per_IP": 1.18182,
"HR_per_IP": 0.0
}
},
"season": {
"games": 25,
"totals": {
"IP": 27.0,
"ER": 9.0,
"R": 10.0,
"H": 20.0,
"BB": 5.0,
"SO": 27.0,
"HR": 1.0,
"BF": 107.0,
"Pitches": 397.0
},
"per_game": {
"IP": 1.0,
"ER": 0.36,
"R": 0.4,
"H": 0.8,
"BB": 0.2,
"SO": 1.08,
"HR": 0.04,
"BF": 4.28,
"Pitches": 15.88
},
"rates": {
"ERA": 3.0,
"WHIP": 0.9259,
"ER_per_IP": 0.33333,
"H_per_IP": 0.74074,
"BB_per_IP": 0.18519,
"SO_per_IP": 1.0,
"HR_per_IP": 0.03704
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.308,
"predicted_H": 0.712,
"predicted_BB": 0.27,
"predicted_SO": 1.204,
"predicted_HR": 0.077,
"predicted_ERA": 2.5693,
"predicted_WHIP": 0.9113
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5545,
"form_weight": 0.4455,
"form_reliability": 0.516,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.332,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.516,
"prior_weight": 0.484
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.308,
"final": 0.6917,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.712,
"final": 0.8717,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.27,
"final": 0.6748,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.204,
"final": 1.0909,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.077,
"final": 0.0343,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.5693,
"final": 2.5693,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9113,
"final": 0.9113,
"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 | Josh Hader |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.7745 |
| ESPN Rank | 313 |
| 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 | 0 |
| Season WHIP | 0.5000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"opponent": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"edges": {
"quality_edge": 0.0964,
"offense_edge": 0.0092,
"opponent_offense_edge": -0.003,
"defense_strength": -0.0875,
"opponent_defense_weakness": 0.1307,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0014,
"run_prevention": 1.0034,
"strikeout": 1.0031
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "623352",
"profile": {
"available": true,
"pitcher_id": "623352",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 0.0,
"k_percent": 57.1,
"bb_percent": 14.3,
"woba": 0.1,
"xwoba": 0.117,
"sweet_spot_percent": 0.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 0.0,
"avg_best_speed": 61.4663,
"avg_hyper_speed": 88.0,
"whiff_percent": 44.4,
"swing_percent": 51.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 2.3524,
"command_and_miss": 1.74,
"regression_edge": -0.4857,
"xwoba_edge": 2.5,
"barrel_edge": 1.5778,
"hard_hit_edge": 2.5,
"whiff_edge": 2.5,
"bb_edge": -1.3,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "623352",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.7745,
"sample_weight": 0.45,
"run_prevention_factor": 0.9342,
"strikeout_factor": 1.09,
"walk_factor": 1.0468,
"homer_factor": 0.8644,
"woba_minus_xwoba": -0.017,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "623352",
"espn_id": 32760,
"player_name": "Josh Hader",
"team": "HOU",
"role": "pitcher",
"espn_rank": 313,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 313,
"gp_value": 2.0,
"gp_rank": 566,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 0.0,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 2.0,
"ip_rank": 618,
"h_value": 0.0,
"h_rank": 665,
"er_value": 0.0,
"er_rank": 633,
"hr_value": 0.0,
"hr_rank": 552,
"bb_value": 1.0,
"bb_rank": 599,
"k_value": 4.0,
"k_rank": 535,
"k_per_9_value": 18.0,
"k_per_9_rank": 23,
"whip_value": 0.5,
"whip_rank": null,
"war_value": 0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9704,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9704,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0211,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.939,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0405,
"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": "insufficient_data"
},
"pitching": {
"IP": 2.0,
"ER": 0,
"H": 0,
"BB": 1,
"SO": 4,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.5,
"K9": 18.0,
"HR9": 0.0,
"games_pitched": 2,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 2,
"error_prone": false
},
"games_count": 2,
"latest_game_date": "2026-06-05T00:00:00"
}{
"available": false,
"pitcher_id": "623352",
"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.395,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0732,
"prior_weight": 0.9268
},
"role": "pitcher",
"player_id": "623352",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 2,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 2,
"totals": {
"IP": 2.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 1.0,
"SO": 4.0,
"HR": 0.0,
"BF": 7.0,
"Pitches": 35.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.5,
"SO": 2.0,
"HR": 0.0,
"BF": 3.5,
"Pitches": 17.5
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5,
"ER_per_IP": 0.0,
"H_per_IP": 0.0,
"BB_per_IP": 0.5,
"SO_per_IP": 2.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 2,
"totals": {
"IP": 2.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 1.0,
"SO": 4.0,
"HR": 0.0,
"BF": 7.0,
"Pitches": 35.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.5,
"SO": 2.0,
"HR": 0.0,
"BF": 3.5,
"Pitches": 17.5
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5,
"ER_per_IP": 0.0,
"H_per_IP": 0.0,
"BB_per_IP": 0.5,
"SO_per_IP": 2.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 2,
"totals": {
"IP": 2.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 1.0,
"SO": 4.0,
"HR": 0.0,
"BF": 7.0,
"Pitches": 35.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.5,
"SO": 2.0,
"HR": 0.0,
"BF": 3.5,
"Pitches": 17.5
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5,
"ER_per_IP": 0.0,
"H_per_IP": 0.0,
"BB_per_IP": 0.5,
"SO_per_IP": 2.0,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.172,
"predicted_H": 0.339,
"predicted_BB": 0.143,
"predicted_SO": 0.387,
"predicted_HR": 0.049,
"predicted_ERA": 4.044,
"predicted_WHIP": 1.2618
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7416,
"form_weight": 0.2584,
"form_reliability": 0.0732,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.395,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0732,
"prior_weight": 0.9268
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.172,
"final": 0.0444,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.339,
"final": 0.0876,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.143,
"final": 0.037,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.387,
"final": 0.8416,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.049,
"final": 0.0127,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.044,
"final": 4.044,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2618,
"final": 1.2618,
"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.219 | 0.000 | 0.000 | Hitting_2B | 0.219 | 0.000 | -0.219 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.580 | 5.000 | 7.000 | Hitting_AB | 4.135 | 4.000 | 0.865 | 1.000 |
| predicted_AVG | 0.259 | 0.400 | 0.286 | Hitting_AVG | 0.262 | 0.000 | 0.138 | 0.400 |
| predicted_BB | 0.229 | 1.000 | 1.000 | Hitting_BB | 0.229 | 0.000 | 0.771 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.010 | 0.000 | -0.010 | 0.000 |
| predicted_H | 1.190 | 2.000 | 2.000 | Hitting_H | 1.083 | 0.000 | 0.917 | 2.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.104 | 0.000 | -0.104 | 0.000 |
| predicted_OBP | 0.358 | 0.500 | 0.375 | Hitting_OBP | 0.318 | 0.000 | 0.182 | 0.500 |
| predicted_R | 0.667 | 1.000 | 1.000 | Hitting_R | 0.667 | 0.000 | 0.333 | 1.000 |
| predicted_RBI | 0.520 | 1.000 | 1.000 | Hitting_RBI | 0.333 | 0.000 | 0.667 | 1.000 |
| predicted_SLG | 0.442 | 0.400 | 0.286 | Hitting_SLG | 0.390 | 0.000 | 0.010 | 0.400 |
| predicted_SO | 0.563 | 1.000 | 1.000 | Hitting_SO | 0.562 | 1.000 | 0.438 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_H: 1.1900 -> 2.0000 (boost 0.8100, better) |
| Biggest Deboost | predicted_2B: 0.2190 -> 0.0000 (deboost -0.2190, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.5800 -> 6.6158 (boost 2.0358, 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 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2773 -> 0.2902 (boost 0.0129, better) | predicted_OBP: 0.3634 -> 0.3423 (deboost -0.0211, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 5 | 3 | 4 | 4 | predicted_BB: 0.5244 -> 1.0000 (boost 0.4756, better) | predicted_2B: 0.4005 -> 0.0000 (deboost -0.4005, worse) | AB rounded to 7 (raw=6.62), rates preserved: AVG=0.290 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2434 -> 1.0000 (deboost -0.2434, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3423 -> 0.3750 (boost 0.0327, better) | predicted_SLG: 0.4316 -> 0.2860 (deboost -0.1456, 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_AB: 7.0000 -> 5.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.2860 -> 0.4316 (boost 0.1456, better) | predicted_OBP: 0.3750 -> 0.3423 (deboost -0.0327, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665161",
"player_name": "Jeremy Peña",
"position": "SS",
"team": "HOU",
"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.0,
"predicted_AB": 4.58,
"predicted_AVG": 0.259,
"predicted_BB": 0.229,
"predicted_H": 1.19,
"predicted_HR": 0.12,
"predicted_OBP": 0.358,
"predicted_R": 0.667,
"predicted_RBI": 0.52,
"predicted_SLG": 0.442,
"predicted_SO": 0.563
},
"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.4005,
"predicted_3B": 0.0009,
"predicted_AB": 6.6158,
"predicted_AVG": 0.2773,
"predicted_BB": 0.5227,
"predicted_H": 1.8856,
"predicted_HBP": 0.176,
"predicted_HR": 0.1743,
"predicted_OBP": 0.3634,
"predicted_R": 1.2073,
"predicted_RBI": 0.7365,
"predicted_SLG": 0.4454,
"predicted_SO": 0.8062
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.219,
"after": 0.4005,
"delta": 0.1815,
"percent_delta": 0.8288,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.58,
"after": 6.6158,
"delta": 2.0358,
"percent_delta": 0.4445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2773,
"delta": 0.0183,
"percent_delta": 0.0707,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.229,
"after": 0.5227,
"delta": 0.2937,
"percent_delta": 1.2825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.19,
"after": 1.8856,
"delta": 0.6956,
"percent_delta": 0.5845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1743,
"delta": 0.0543,
"percent_delta": 0.4525,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3634,
"delta": 0.0054,
"percent_delta": 0.0151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 1.2073,
"delta": 0.5403,
"percent_delta": 0.81,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.7365,
"delta": 0.2165,
"percent_delta": 0.4163,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.442,
"after": 0.4454,
"delta": 0.0034,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.563,
"after": 0.8062,
"delta": 0.2432,
"percent_delta": 0.432,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.58,
"after": 6.6158,
"delta": 2.0358,
"percent_delta": 0.4445,
"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.4005,
"predicted_3B": 0.0009,
"predicted_AB": 6.6158,
"predicted_AVG": 0.2902,
"predicted_BB": 0.5244,
"predicted_H": 1.9199,
"predicted_HBP": 0.176,
"predicted_HR": 0.1776,
"predicted_OBP": 0.3423,
"predicted_R": 1.2434,
"predicted_RBI": 0.7585,
"predicted_SLG": 0.4316,
"predicted_SO": 0.8035
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4005,
"after": 0.4005,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6158,
"after": 6.6158,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2773,
"after": 0.2902,
"delta": 0.0129,
"percent_delta": 0.0465,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5227,
"after": 0.5244,
"delta": 0.0017,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8856,
"after": 1.9199,
"delta": 0.0343,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.176,
"after": 0.176,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1743,
"after": 0.1776,
"delta": 0.0033,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3634,
"after": 0.3423,
"delta": -0.0211,
"percent_delta": -0.0581,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2073,
"after": 1.2434,
"delta": 0.0361,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7365,
"after": 0.7585,
"delta": 0.022,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4454,
"after": 0.4316,
"delta": -0.0138,
"percent_delta": -0.031,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8062,
"after": 0.8035,
"delta": -0.0027,
"percent_delta": -0.0033,
"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.2773,
"after": 0.2902,
"delta": 0.0129,
"percent_delta": 0.0465,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3634,
"after": 0.3423,
"delta": -0.0211,
"percent_delta": -0.0581,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.62), rates preserved: AVG=0.290 HR/AB=0.027",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.4005,
"after": 0.0,
"delta": -0.4005,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6158,
"after": 7.0,
"delta": 0.3842,
"percent_delta": 0.0581,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5244,
"after": 1.0,
"delta": 0.4756,
"percent_delta": 0.9069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9199,
"after": 2.0,
"delta": 0.0801,
"percent_delta": 0.0417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1776,
"after": 0.0,
"delta": -0.1776,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7585,
"after": 1.0,
"delta": 0.2415,
"percent_delta": 0.3184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8035,
"after": 1.0,
"delta": 0.1965,
"percent_delta": 0.2446,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5244,
"after": 1.0,
"delta": 0.4756,
"percent_delta": 0.9069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4005,
"after": 0.0,
"delta": -0.4005,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 1.2434,
"after": 1.0,
"delta": -0.2434,
"percent_delta": -0.1958,
"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": 1.2434,
"after": 1.0,
"delta": -0.2434,
"percent_delta": -0.1958,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2902,
"after": 0.286,
"delta": -0.0042,
"percent_delta": -0.0145,
"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": 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_OBP",
"before": 0.3423,
"after": 0.375,
"delta": 0.0327,
"percent_delta": 0.0955,
"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.4316,
"after": 0.286,
"delta": -0.1456,
"percent_delta": -0.3373,
"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.3423,
"after": 0.375,
"delta": 0.0327,
"percent_delta": 0.0955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4316,
"after": 0.286,
"delta": -0.1456,
"percent_delta": -0.3373,
"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": 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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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_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": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.2902,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3423,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4316,
"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": 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.286,
"after": 0.2902,
"delta": 0.0042,
"percent_delta": 0.0147,
"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.375,
"after": 0.3423,
"delta": -0.0327,
"percent_delta": -0.0871,
"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.286,
"after": 0.4316,
"delta": 0.1456,
"percent_delta": 0.5089,
"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.286,
"after": 0.4316,
"delta": 0.1456,
"percent_delta": 0.5089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3423,
"delta": -0.0327,
"percent_delta": -0.0871,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.58,
"after": 5.0,
"delta": 0.42,
"percent_delta": 0.0917,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2902,
"delta": 0.0312,
"percent_delta": 0.1205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.229,
"after": 1.0,
"delta": 0.771,
"percent_delta": 3.3668,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.19,
"after": 2.0,
"delta": 0.81,
"percent_delta": 0.6807,
"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.358,
"after": 0.3423,
"delta": -0.0157,
"percent_delta": -0.0439,
"direction": "deboost",
"projection_effect": "worse",
"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.52,
"after": 1.0,
"delta": 0.48,
"percent_delta": 0.9231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.442,
"after": 0.4316,
"delta": -0.0104,
"percent_delta": -0.0235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.563,
"after": 1.0,
"delta": 0.437,
"percent_delta": 0.7762,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 7,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.19,
"after": 2.0,
"delta": 0.81,
"percent_delta": 0.6807,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.219,
"after": 0.0,
"delta": -0.219,
"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.219 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.580 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.229 | - |
| predicted_H | 1.190 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.358 | - |
| predicted_R | 0.667 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.442 | - |
| predicted_SO | 0.563 | - |
Final model 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.401 | 0.182 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 6.616 | 2.036 |
| predicted_AVG | 0.277 | 0.018 |
| predicted_BB | 0.523 | 0.294 |
| predicted_H | 1.886 | 0.696 |
| predicted_HBP | 0.176 | - |
| predicted_HR | 0.174 | 0.054 |
| predicted_OBP | 0.363 | 0.005 |
| predicted_R | 1.207 | 0.540 |
| predicted_RBI | 0.737 | 0.217 |
| predicted_SLG | 0.445 | 0.003 |
| predicted_SO | 0.806 | 0.243 |
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.401 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 6.616 | 0.000 |
| predicted_AVG | 0.290 | 0.013 |
| predicted_BB | 0.524 | 0.002 |
| predicted_H | 1.920 | 0.034 |
| predicted_HBP | 0.176 | 0.000 |
| predicted_HR | 0.178 | 0.003 |
| predicted_OBP | 0.342 | -0.021 |
| predicted_R | 1.243 | 0.036 |
| predicted_RBI | 0.758 | 0.022 |
| predicted_SLG | 0.432 | -0.014 |
| predicted_SO | 0.803 | -0.003 |
AB rounded to 7 (raw=6.62), rates preserved: AVG=0.290 HR/AB=0.027
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.401 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 7.000 | 0.384 |
| predicted_AVG | 0.286 | -0.004 |
| predicted_BB | 1.000 | 0.476 |
| predicted_H | 2.000 | 0.080 |
| predicted_HR | 0.000 | -0.178 |
| predicted_OBP | 0.375 | 0.033 |
| predicted_R | 1.000 | -0.243 |
| predicted_RBI | 1.000 | 0.242 |
| predicted_SLG | 0.286 | -0.146 |
| predicted_SO | 1.000 | 0.197 |
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 | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 6.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 | - | 18.000 | 6.000 | 2.000 | 0.000 | 0.000 | 2.000 | 5.000 | 4.000 | 1.000 | 0.3333 | 0.4545 | 0.4444 | 0.3333 | 0.0000 | 0.1111 | 0.2222 | 0.0556 |
| last_10 | 0.20 | 10 | - | 37.000 | 15.000 | 3.000 | 0.000 | 2.000 | 7.000 | 11.000 | 4.000 | 4.000 | 0.4054 | 0.4634 | 0.6486 | 0.4054 | 0.0541 | 0.1892 | 0.1081 | 0.1081 |
| season | 0.60 | 29 | - | 397.000 | 104.000 | 21.000 | 0.000 | 10.000 | 32.000 | 64.000 | 22.000 | 54.000 | 0.2620 | 0.3181 | 0.3904 | 0.2620 | 0.0252 | 0.0806 | 0.0554 | 0.1360 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6400 |
| predicted_3B | 0.0020 |
| predicted_AB | 9.3010 |
| predicted_AVG | 0.3014 |
| predicted_BB | 0.9100 |
| predicted_H | 2.8030 |
| predicted_HBP | 0.1760 |
| predicted_HR | 0.2460 |
| predicted_OBP | 0.3705 |
| predicted_R | 1.9200 |
| predicted_RBI | 1.0220 |
| predicted_SLG | 0.4500 |
| predicted_SO | 1.1270 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2190 | 0.6400 | 0.4005 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 4.5800 | 9.3010 | 6.6158 | model_form_blend |
| predicted_AVG | 0.2590 | 0.3014 | 0.2773 | model_form_blend |
| predicted_BB | 0.2290 | 0.9100 | 0.5227 | model_form_blend |
| predicted_H | 1.1900 | 2.8030 | 1.8856 | model_form_blend |
| predicted_HBP | - | 0.1760 | 0.1760 | form_only |
| predicted_HR | 0.1200 | 0.2460 | 0.1743 | model_form_blend |
| predicted_OBP | 0.3580 | 0.3705 | 0.3634 | model_form_blend |
| predicted_R | 0.6670 | 1.9200 | 1.2073 | model_form_blend |
| predicted_RBI | 0.5200 | 1.0220 | 0.7365 | model_form_blend |
| predicted_SLG | 0.4420 | 0.4500 | 0.4454 | model_form_blend |
| predicted_SO | 0.5630 | 1.1270 | 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 | 96 |
| Season rows before report date | 96 |
| Report year | 2026 |
| Profile rows used | 96 |
| 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 | 6 |
| AB | 5 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 1 |
| 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 | 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 | 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 | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 665161 |
| playerID | 665161 |
| playerName | Jeremy Peña |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 13.4 |
| sl_bb_percent | 6.3 |
| sl_woba | 0.35 |
| sl_xwoba | 0.375 |
| sl_xba | 0.327 |
| sl_xslg | 0.48 |
| sl_sweet_spot_percent | 34.3 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 32.3 |
| sl_exit_velocity_avg | 86.0 |
| sl_launch_angle_avg | 13.5 |
| sl_whiff_percent | 25.4 |
| 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.187 | 0.000 | 0.000 | Hitting_2B | 0.187 | 0.000 | -0.187 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.870 | 4.000 | 6.000 | Hitting_AB | 3.726 | 4.000 | 0.274 | 0.000 |
| predicted_AVG | 0.241 | 0.250 | 0.333 | Hitting_AVG | 0.241 | 0.000 | 0.009 | 0.250 |
| predicted_BB | 0.411 | 1.000 | 1.000 | Hitting_BB | 0.411 | 0.000 | 0.589 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.930 | 1.000 | 2.000 | Hitting_H | 0.900 | 0.000 | 0.100 | 1.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.132 | 0.000 | -0.132 | 0.000 |
| predicted_OBP | 0.334 | 0.400 | 0.429 | Hitting_OBP | 0.337 | 0.000 | 0.063 | 0.400 |
| predicted_R | 0.461 | 1.000 | 1.000 | Hitting_R | 0.461 | 0.000 | 0.539 | 1.000 |
| predicted_RBI | 0.790 | 1.000 | 1.000 | Hitting_RBI | 0.511 | 0.000 | 0.489 | 1.000 |
| predicted_SLG | 0.476 | 0.250 | 0.333 | Hitting_SLG | 0.398 | 0.000 | -0.148 | 0.250 |
| predicted_SO | 0.648 | 1.000 | 1.000 | Hitting_SO | 0.648 | 1.000 | 0.352 | 0.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 | 8 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_BB: 0.4110 -> 1.0000 (boost 0.5890, better) |
| Biggest Deboost | predicted_HR: 0.2100 -> 0.0000 (deboost -0.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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.8700 -> 6.2923 (boost 2.4223, 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 | 2 | 0 | 2 | 0 | predicted_SLG: 0.5128 -> 0.5310 (boost 0.0182, better) | - | 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_H: 1.6491 -> 2.0000 (boost 0.3509, better) | predicted_RBI: 1.5538 -> 1.0000 (deboost -0.5538, worse) | AB rounded to 6 (raw=6.29), rates preserved: AVG=0.262 HR/AB=0.071 |
| 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 | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3440 -> 0.4290 (boost 0.0850, better) | predicted_SLG: 0.5310 -> 0.3330 (deboost -0.1980, 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: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.5310 (boost 0.1980, better) | predicted_OBP: 0.4290 -> 0.3440 (deboost -0.0850, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670623",
"player_name": "Isaac Paredes",
"position": "3B",
"team": "HOU",
"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.187,
"predicted_3B": 0.0,
"predicted_AB": 3.87,
"predicted_AVG": 0.241,
"predicted_BB": 0.411,
"predicted_H": 0.93,
"predicted_HR": 0.21,
"predicted_OBP": 0.334,
"predicted_R": 0.461,
"predicted_RBI": 0.79,
"predicted_SLG": 0.476,
"predicted_SO": 0.648
},
"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.347,
"predicted_3B": 0.0004,
"predicted_AB": 6.2923,
"predicted_AVG": 0.2522,
"predicted_BB": 0.7827,
"predicted_H": 1.6196,
"predicted_HBP": 0.189,
"predicted_HR": 0.4397,
"predicted_OBP": 0.342,
"predicted_R": 0.9667,
"predicted_RBI": 1.5087,
"predicted_SLG": 0.5128,
"predicted_SO": 1.1793
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.187,
"after": 0.347,
"delta": 0.16,
"percent_delta": 0.8556,
"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": 3.87,
"after": 6.2923,
"delta": 2.4223,
"percent_delta": 0.6259,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2522,
"delta": 0.0112,
"percent_delta": 0.0465,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.411,
"after": 0.7827,
"delta": 0.3717,
"percent_delta": 0.9044,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 1.6196,
"delta": 0.6896,
"percent_delta": 0.7415,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.4397,
"delta": 0.2297,
"percent_delta": 1.0938,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.342,
"delta": 0.008,
"percent_delta": 0.024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 0.9667,
"delta": 0.5057,
"percent_delta": 1.097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.79,
"after": 1.5087,
"delta": 0.7187,
"percent_delta": 0.9097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.476,
"after": 0.5128,
"delta": 0.0368,
"percent_delta": 0.0773,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.648,
"after": 1.1793,
"delta": 0.5313,
"percent_delta": 0.8199,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.87,
"after": 6.2923,
"delta": 2.4223,
"percent_delta": 0.6259,
"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.347,
"predicted_3B": 0.0004,
"predicted_AB": 6.2923,
"predicted_AVG": 0.2621,
"predicted_BB": 0.7853,
"predicted_H": 1.6491,
"predicted_HBP": 0.189,
"predicted_HR": 0.4481,
"predicted_OBP": 0.344,
"predicted_R": 0.9956,
"predicted_RBI": 1.5538,
"predicted_SLG": 0.531,
"predicted_SO": 1.1754
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.347,
"after": 0.347,
"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": 6.2923,
"after": 6.2923,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2522,
"after": 0.2621,
"delta": 0.0099,
"percent_delta": 0.0393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7827,
"after": 0.7853,
"delta": 0.0026,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6196,
"after": 1.6491,
"delta": 0.0295,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.189,
"after": 0.189,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4397,
"after": 0.4481,
"delta": 0.0084,
"percent_delta": 0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.344,
"delta": 0.002,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.9667,
"after": 0.9956,
"delta": 0.0289,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.5087,
"after": 1.5538,
"delta": 0.0451,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5128,
"after": 0.531,
"delta": 0.0182,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1793,
"after": 1.1754,
"delta": -0.0039,
"percent_delta": -0.0033,
"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.5128,
"after": 0.531,
"delta": 0.0182,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.29), rates preserved: AVG=0.262 HR/AB=0.071",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.347,
"after": 0.0,
"delta": -0.347,
"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": 6.2923,
"after": 6.0,
"delta": -0.2923,
"percent_delta": -0.0465,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7853,
"after": 1.0,
"delta": 0.2147,
"percent_delta": 0.2734,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6491,
"after": 2.0,
"delta": 0.3509,
"percent_delta": 0.2128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.189,
"after": 0.0,
"delta": -0.189,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4481,
"after": 0.0,
"delta": -0.4481,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.5538,
"after": 1.0,
"delta": -0.5538,
"percent_delta": -0.3564,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1754,
"after": 1.0,
"delta": -0.1754,
"percent_delta": -0.1492,
"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_H",
"before": 1.6491,
"after": 2.0,
"delta": 0.3509,
"percent_delta": 0.2128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.5538,
"after": 1.0,
"delta": -0.5538,
"percent_delta": -0.3564,
"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": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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": 6.0,
"after": 6.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": 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_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": 6.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 0.9956,
"after": 1.0,
"delta": 0.0044,
"percent_delta": 0.0044,
"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_SO",
"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": 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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2621,
"after": 0.333,
"delta": 0.0709,
"percent_delta": 0.2705,
"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": 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_OBP",
"before": 0.344,
"after": 0.429,
"delta": 0.085,
"percent_delta": 0.2471,
"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.531,
"after": 0.333,
"delta": -0.198,
"percent_delta": -0.3729,
"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.344,
"after": 0.429,
"delta": 0.085,
"percent_delta": 0.2471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.531,
"after": 0.333,
"delta": -0.198,
"percent_delta": -0.3729,
"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": 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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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.2621,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.344,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.531,
"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.2621,
"delta": -0.0709,
"percent_delta": -0.213,
"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.429,
"after": 0.344,
"delta": -0.085,
"percent_delta": -0.1982,
"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.531,
"delta": 0.198,
"percent_delta": 0.5945,
"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.531,
"delta": 0.198,
"percent_delta": 0.5945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.344,
"delta": -0.085,
"percent_delta": -0.1982,
"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.187,
"after": 0.0,
"delta": -0.187,
"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.87,
"after": 4.0,
"delta": 0.13,
"percent_delta": 0.0336,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2621,
"delta": 0.0211,
"percent_delta": 0.0876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.411,
"after": 1.0,
"delta": 0.589,
"percent_delta": 1.4331,
"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.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.344,
"delta": 0.01,
"percent_delta": 0.0299,
"direction": "boost",
"projection_effect": "better",
"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.79,
"after": 1.0,
"delta": 0.21,
"percent_delta": 0.2658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.476,
"after": 0.531,
"delta": 0.055,
"percent_delta": 0.1155,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.648,
"after": 1.0,
"delta": 0.352,
"percent_delta": 0.5432,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 9,
"deboosted_metrics": 2,
"better_metrics": 8,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.411,
"after": 1.0,
"delta": 0.589,
"percent_delta": 1.4331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.21,
"after": 0.0,
"delta": -0.21,
"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.187 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.870 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.411 | - |
| predicted_H | 0.930 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.334 | - |
| predicted_R | 0.461 | - |
| predicted_RBI | 0.790 | - |
| predicted_SLG | 0.476 | - |
| predicted_SO | 0.648 | - |
Final model 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.347 | 0.160 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.292 | 2.422 |
| predicted_AVG | 0.252 | 0.011 |
| predicted_BB | 0.783 | 0.372 |
| predicted_H | 1.620 | 0.690 |
| predicted_HBP | 0.189 | - |
| predicted_HR | 0.440 | 0.230 |
| predicted_OBP | 0.342 | 0.008 |
| predicted_R | 0.967 | 0.506 |
| predicted_RBI | 1.509 | 0.719 |
| predicted_SLG | 0.513 | 0.037 |
| predicted_SO | 1.179 | 0.531 |
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.347 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.292 | 0.000 |
| predicted_AVG | 0.262 | 0.010 |
| predicted_BB | 0.785 | 0.003 |
| predicted_H | 1.649 | 0.030 |
| predicted_HBP | 0.189 | 0.000 |
| predicted_HR | 0.448 | 0.008 |
| predicted_OBP | 0.344 | 0.002 |
| predicted_R | 0.996 | 0.029 |
| predicted_RBI | 1.554 | 0.045 |
| predicted_SLG | 0.531 | 0.018 |
| predicted_SO | 1.175 | -0.004 |
AB rounded to 6 (raw=6.29), rates preserved: AVG=0.262 HR/AB=0.071
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.347 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.292 |
| predicted_AVG | 0.333 | 0.071 |
| predicted_BB | 1.000 | 0.215 |
| predicted_H | 2.000 | 0.351 |
| predicted_HR | 0.000 | -0.448 |
| predicted_OBP | 0.429 | 0.085 |
| predicted_R | 1.000 | 0.004 |
| predicted_RBI | 1.000 | -0.554 |
| predicted_SLG | 0.333 | -0.198 |
| 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 | -2.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | 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 | 3.000 | 9.000 | 5.000 | 3.000 | 4.000 | 0.3529 | 0.4091 | 0.9412 | 0.3529 | 0.1765 | 0.5294 | 0.1765 | 0.2353 |
| last_10 | 0.20 | 10 | - | 35.000 | 9.000 | 3.000 | 0.000 | 4.000 | 13.000 | 7.000 | 6.000 | 8.000 | 0.2571 | 0.3488 | 0.6857 | 0.2571 | 0.1143 | 0.3714 | 0.1714 | 0.2286 |
| season | 0.60 | 60 | - | 816.000 | 197.000 | 41.000 | 0.000 | 29.000 | 112.000 | 101.000 | 90.000 | 142.000 | 0.2414 | 0.3365 | 0.3983 | 0.2414 | 0.0355 | 0.1373 | 0.1103 | 0.1740 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5500 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.3640 |
| predicted_AVG | 0.2663 |
| predicted_BB | 1.2540 |
| predicted_H | 2.4940 |
| predicted_HBP | 0.1890 |
| predicted_HR | 0.7310 |
| predicted_OBP | 0.3522 |
| predicted_R | 1.6080 |
| predicted_RBI | 2.4200 |
| predicted_SLG | 0.5595 |
| predicted_SO | 1.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1870 | 0.5500 | 0.3470 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8700 | 9.3640 | 6.2923 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2663 | 0.2522 | model_form_blend |
| predicted_BB | 0.4110 | 1.2540 | 0.7827 | model_form_blend |
| predicted_H | 0.9300 | 2.4940 | 1.6196 | model_form_blend |
| predicted_HBP | - | 0.1890 | 0.1890 | form_only |
| predicted_HR | 0.2100 | 0.7310 | 0.4397 | model_form_blend |
| predicted_OBP | 0.3340 | 0.3522 | 0.3420 | model_form_blend |
| predicted_R | 0.4610 | 1.6080 | 0.9667 | model_form_blend |
| predicted_RBI | 0.7900 | 2.4200 | 1.5087 | model_form_blend |
| predicted_SLG | 0.4760 | 0.5595 | 0.5128 | model_form_blend |
| predicted_SO | 0.6480 | 1.8530 | 1.1793 | 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 | 219 |
| 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 | 1 |
| BB | 1 |
| SO | 1 |
| 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.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 | 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 |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 670623 |
| playerID | 670623 |
| playerName | Isaac Paredes |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 16.3 |
| sl_bb_percent | 9.5 |
| sl_woba | 0.334 |
| sl_xwoba | 0.317 |
| sl_xba | 0.24 |
| sl_xslg | 0.374 |
| sl_sweet_spot_percent | 36.1 |
| sl_barrel_batted_rate | 6.7 |
| sl_hard_hit_percent | 30.6 |
| sl_exit_velocity_avg | 87.1 |
| sl_launch_angle_avg | 24.1 |
| sl_whiff_percent | 16.6 |
| 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.201 | 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 | 4.050 | 4.000 | 7.000 | Hitting_AB | 3.697 | 3.000 | 0.303 | 1.000 |
| predicted_AVG | 0.281 | 0.000 | 0.286 | Hitting_AVG | 0.332 | 0.333 | -0.332 | -0.333 |
| predicted_BB | 0.724 | 1.000 | 1.000 | Hitting_BB | 0.724 | 1.000 | 0.276 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.140 | 0.000 | 2.000 | Hitting_H | 1.228 | 1.000 | -1.228 | -1.000 |
| predicted_HR | 0.250 | 0.000 | 1.000 | Hitting_HR | 0.394 | 0.000 | -0.394 | 0.000 |
| predicted_OBP | 0.413 | 0.200 | 0.375 | Hitting_OBP | 0.448 | 0.500 | -0.248 | -0.300 |
| predicted_R | 0.736 | 0.000 | 1.000 | Hitting_R | 0.736 | 0.000 | -0.736 | 0.000 |
| predicted_RBI | 0.810 | 0.000 | 2.000 | Hitting_RBI | 0.760 | 0.000 | -0.760 | 0.000 |
| predicted_SLG | 0.572 | 0.000 | 0.714 | Hitting_SLG | 0.706 | 0.333 | -0.706 | -0.333 |
| predicted_SO | 0.744 | 1.000 | 1.000 | Hitting_SO | 0.744 | 0.000 | 0.256 | 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.7240 -> 1.0000 (boost 0.2760, better) |
| Biggest Deboost | predicted_H: 1.1400 -> 0.0000 (deboost -1.1400, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.0500 -> 6.6344 (boost 2.5844, 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_AVG: 0.3156 -> 0.3389 (boost 0.0233, better) | - | 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_HR: 0.5244 -> 1.0000 (boost 0.4756, better) | predicted_2B: 0.3554 -> 0.0000 (deboost -0.3554, worse) | AB rounded to 7 (raw=6.63), rates preserved: AVG=0.339 HR/AB=0.079 |
| 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: 1.4467 -> 1.0000 (deboost -0.4467, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.6297 -> 0.7140 (boost 0.0843, better) | predicted_OBP: 0.4481 -> 0.3750 (deboost -0.0731, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3750 -> 0.4481 (boost 0.0731, better) | predicted_SLG: 0.7140 -> 0.6297 (deboost -0.0843, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670541",
"player_name": "Yordan Alvarez",
"position": "DH",
"team": "HOU",
"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.201,
"predicted_3B": 0.0,
"predicted_AB": 4.05,
"predicted_AVG": 0.281,
"predicted_BB": 0.724,
"predicted_H": 1.14,
"predicted_HR": 0.25,
"predicted_OBP": 0.413,
"predicted_R": 0.736,
"predicted_RBI": 0.81,
"predicted_SLG": 0.572,
"predicted_SO": 0.744
},
"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.3554,
"predicted_3B": 0.0004,
"predicted_AB": 6.6344,
"predicted_AVG": 0.3156,
"predicted_BB": 1.3095,
"predicted_H": 2.2079,
"predicted_HBP": 0.168,
"predicted_HR": 0.5146,
"predicted_OBP": 0.4401,
"predicted_R": 1.4047,
"predicted_RBI": 1.5128,
"predicted_SLG": 0.6163,
"predicted_SO": 1.1998
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.201,
"after": 0.3554,
"delta": 0.1544,
"percent_delta": 0.7682,
"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.05,
"after": 6.6344,
"delta": 2.5844,
"percent_delta": 0.6381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.281,
"after": 0.3156,
"delta": 0.0346,
"percent_delta": 0.1231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.724,
"after": 1.3095,
"delta": 0.5855,
"percent_delta": 0.8087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.14,
"after": 2.2079,
"delta": 1.0679,
"percent_delta": 0.9368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.25,
"after": 0.5146,
"delta": 0.2646,
"percent_delta": 1.0584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.413,
"after": 0.4401,
"delta": 0.0271,
"percent_delta": 0.0656,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.736,
"after": 1.4047,
"delta": 0.6687,
"percent_delta": 0.9086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.81,
"after": 1.5128,
"delta": 0.7028,
"percent_delta": 0.8677,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.572,
"after": 0.6163,
"delta": 0.0443,
"percent_delta": 0.0774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.744,
"after": 1.1998,
"delta": 0.4558,
"percent_delta": 0.6126,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.05,
"after": 6.6344,
"delta": 2.5844,
"percent_delta": 0.6381,
"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.3554,
"predicted_3B": 0.0004,
"predicted_AB": 6.6344,
"predicted_AVG": 0.3389,
"predicted_BB": 1.3138,
"predicted_H": 2.2481,
"predicted_HBP": 0.168,
"predicted_HR": 0.5244,
"predicted_OBP": 0.4481,
"predicted_R": 1.4467,
"predicted_RBI": 1.558,
"predicted_SLG": 0.6297,
"predicted_SO": 1.1958
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3554,
"after": 0.3554,
"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": 6.6344,
"after": 6.6344,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3156,
"after": 0.3389,
"delta": 0.0233,
"percent_delta": 0.0738,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.3095,
"after": 1.3138,
"delta": 0.0043,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.2079,
"after": 2.2481,
"delta": 0.0402,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.168,
"after": 0.168,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.5146,
"after": 0.5244,
"delta": 0.0098,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4401,
"after": 0.4481,
"delta": 0.008,
"percent_delta": 0.0182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.4047,
"after": 1.4467,
"delta": 0.042,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.5128,
"after": 1.558,
"delta": 0.0452,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.6163,
"after": 0.6297,
"delta": 0.0134,
"percent_delta": 0.0217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1998,
"after": 1.1958,
"delta": -0.004,
"percent_delta": -0.0033,
"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.3156,
"after": 0.3389,
"delta": 0.0233,
"percent_delta": 0.0738,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.63), rates preserved: AVG=0.339 HR/AB=0.079",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3554,
"after": 0.0,
"delta": -0.3554,
"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": 6.6344,
"after": 7.0,
"delta": 0.3656,
"percent_delta": 0.0551,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.3138,
"after": 1.0,
"delta": -0.3138,
"percent_delta": -0.2388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 2.2481,
"after": 2.0,
"delta": -0.2481,
"percent_delta": -0.1104,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.168,
"after": 0.0,
"delta": -0.168,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.5244,
"after": 1.0,
"delta": 0.4756,
"percent_delta": 0.9069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.558,
"after": 2.0,
"delta": 0.442,
"percent_delta": 0.2837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1958,
"after": 1.0,
"delta": -0.1958,
"percent_delta": -0.1637,
"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_HR",
"before": 0.5244,
"after": 1.0,
"delta": 0.4756,
"percent_delta": 0.9069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3554,
"after": 0.0,
"delta": -0.3554,
"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": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_RBI": 2.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": 7.0,
"after": 7.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": 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_RBI",
"before": 2.0,
"after": 2.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": 7.0,
"predicted_BB": 1.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": 7.0,
"after": 7.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": 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_R",
"before": 1.4467,
"after": 1.0,
"delta": -0.4467,
"percent_delta": -0.3088,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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_SO",
"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.4467,
"after": 1.0,
"delta": -0.4467,
"percent_delta": -0.3088,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SLG": 0.714,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3389,
"after": 0.286,
"delta": -0.0529,
"percent_delta": -0.1561,
"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": 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_OBP",
"before": 0.4481,
"after": 0.375,
"delta": -0.0731,
"percent_delta": -0.1631,
"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_SLG",
"before": 0.6297,
"after": 0.714,
"delta": 0.0843,
"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.6297,
"after": 0.714,
"delta": 0.0843,
"percent_delta": 0.1339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4481,
"after": 0.375,
"delta": -0.0731,
"percent_delta": -0.1631,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 0.0,
"delta": -2.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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 2.0,
"after": 0.0,
"delta": -2.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": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.3389,
"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.4481,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.6297,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.286,
"after": 0.3389,
"delta": 0.0529,
"percent_delta": 0.1848,
"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.375,
"after": 0.4481,
"delta": 0.0731,
"percent_delta": 0.195,
"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.714,
"after": 0.6297,
"delta": -0.0843,
"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_OBP",
"before": 0.375,
"after": 0.4481,
"delta": 0.0731,
"percent_delta": 0.195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.714,
"after": 0.6297,
"delta": -0.0843,
"percent_delta": -0.1181,
"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.201,
"after": 0.0,
"delta": -0.201,
"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": 4.0,
"delta": -0.05,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.281,
"after": 0.3389,
"delta": 0.0579,
"percent_delta": 0.206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.724,
"after": 1.0,
"delta": 0.276,
"percent_delta": 0.3812,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.14,
"after": 0.0,
"delta": -1.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.413,
"after": 0.4481,
"delta": 0.0351,
"percent_delta": 0.085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.736,
"after": 0.0,
"delta": -0.736,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.572,
"after": 0.6297,
"delta": 0.0577,
"percent_delta": 0.1009,
"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": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.724,
"after": 1.0,
"delta": 0.276,
"percent_delta": 0.3812,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.14,
"after": 0.0,
"delta": -1.14,
"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.201 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.050 | - |
| predicted_AVG | 0.281 | - |
| predicted_BB | 0.724 | - |
| predicted_H | 1.140 | - |
| predicted_HR | 0.250 | - |
| predicted_OBP | 0.413 | - |
| predicted_R | 0.736 | - |
| predicted_RBI | 0.810 | - |
| predicted_SLG | 0.572 | - |
| predicted_SO | 0.744 | - |
Final model 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.355 | 0.154 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.634 | 2.584 |
| predicted_AVG | 0.316 | 0.035 |
| predicted_BB | 1.310 | 0.586 |
| predicted_H | 2.208 | 1.068 |
| predicted_HBP | 0.168 | - |
| predicted_HR | 0.515 | 0.265 |
| predicted_OBP | 0.440 | 0.027 |
| predicted_R | 1.405 | 0.669 |
| predicted_RBI | 1.513 | 0.703 |
| predicted_SLG | 0.616 | 0.044 |
| predicted_SO | 1.200 | 0.456 |
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.355 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.634 | 0.000 |
| predicted_AVG | 0.339 | 0.023 |
| predicted_BB | 1.314 | 0.004 |
| predicted_H | 2.248 | 0.040 |
| predicted_HBP | 0.168 | 0.000 |
| predicted_HR | 0.524 | 0.010 |
| predicted_OBP | 0.448 | 0.008 |
| predicted_R | 1.447 | 0.042 |
| predicted_RBI | 1.558 | 0.045 |
| predicted_SLG | 0.630 | 0.013 |
| predicted_SO | 1.196 | -0.004 |
AB rounded to 7 (raw=6.63), rates preserved: AVG=0.339 HR/AB=0.079
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 1.000 | - |
| RBI | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 1.000 | 0.000 |
| RBI | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 0.000 |
| R | 1.000 | - |
| RBI | 2.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.355 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.366 |
| predicted_AVG | 0.286 | -0.053 |
| predicted_BB | 1.000 | -0.314 |
| predicted_H | 2.000 | -0.248 |
| predicted_HR | 1.000 | 0.476 |
| predicted_OBP | 0.375 | -0.073 |
| predicted_R | 1.000 | -0.447 |
| predicted_RBI | 2.000 | 0.442 |
| predicted_SLG | 0.714 | 0.084 |
| predicted_SO | 1.000 | -0.196 |
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 | -3.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | -1.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -2.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 | 8.000 | 1.000 | 0.000 | 1.000 | 6.000 | 5.000 | 4.000 | 1.000 | 0.4706 | 0.5714 | 0.7059 | 0.4706 | 0.0588 | 0.3529 | 0.2353 | 0.0588 |
| last_10 | 0.20 | 10 | - | 35.000 | 12.000 | 2.000 | 0.000 | 2.000 | 9.000 | 9.000 | 8.000 | 8.000 | 0.3429 | 0.4773 | 0.5714 | 0.3429 | 0.0571 | 0.2571 | 0.2286 | 0.2286 |
| season | 0.60 | 65 | - | 939.000 | 312.000 | 51.000 | 0.000 | 100.000 | 193.000 | 187.000 | 184.000 | 189.000 | 0.3323 | 0.4477 | 0.7061 | 0.3323 | 0.1065 | 0.2055 | 0.1960 | 0.2013 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5500 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.8900 |
| predicted_AVG | 0.3592 |
| predicted_BB | 2.0470 |
| predicted_H | 3.5530 |
| predicted_HBP | 0.1680 |
| predicted_HR | 0.8480 |
| predicted_OBP | 0.4742 |
| predicted_R | 2.2470 |
| predicted_RBI | 2.3980 |
| predicted_SLG | 0.6722 |
| predicted_SO | 1.7740 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2010 | 0.5500 | 0.3554 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0500 | 9.8900 | 6.6344 | model_form_blend |
| predicted_AVG | 0.2810 | 0.3592 | 0.3156 | model_form_blend |
| predicted_BB | 0.7240 | 2.0470 | 1.3095 | model_form_blend |
| predicted_H | 1.1400 | 3.5530 | 2.2079 | model_form_blend |
| predicted_HBP | - | 0.1680 | 0.1680 | form_only |
| predicted_HR | 0.2500 | 0.8480 | 0.5146 | model_form_blend |
| predicted_OBP | 0.4130 | 0.4742 | 0.4401 | model_form_blend |
| predicted_R | 0.7360 | 2.2470 | 1.4047 | model_form_blend |
| predicted_RBI | 0.8100 | 2.3980 | 1.5128 | model_form_blend |
| predicted_SLG | 0.5720 | 0.6722 | 0.6163 | model_form_blend |
| predicted_SO | 0.7440 | 1.7740 | 1.1998 | 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 | 254 |
| Season rows before report date | 254 |
| Report year | 2026 |
| Profile rows used | 254 |
| 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.332 |
| 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 | DH |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 670541 |
| playerID | 670541 |
| playerName | Yordan Alvarez |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 17.0 |
| sl_bb_percent | 15.3 |
| sl_woba | 0.453 |
| sl_xwoba | 0.493 |
| sl_xba | 0.347 |
| sl_xslg | 0.737 |
| sl_sweet_spot_percent | 46.3 |
| sl_barrel_batted_rate | 18.6 |
| sl_hard_hit_percent | 54.2 |
| sl_exit_velocity_avg | 94.9 |
| sl_launch_angle_avg | 19.1 |
| sl_whiff_percent | 19.6 |
| 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_2B | 0.180 | 1.000 | 0.000 | Hitting_2B | 0.180 | 0.000 | 0.820 | 1.000 |
| predicted_3B | 0.004 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.130 | 5.000 | 7.000 | Hitting_AB | 3.808 | 4.000 | 1.192 | 1.000 |
| predicted_AVG | 0.231 | 0.400 | 0.286 | Hitting_AVG | 0.274 | 0.000 | 0.126 | 0.400 |
| predicted_BB | 0.385 | 0.000 | 1.000 | Hitting_BB | 0.385 | 0.000 | -0.385 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.950 | 2.000 | 2.000 | Hitting_H | 1.042 | 0.000 | 0.958 | 2.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.280 | 0.000 | -0.280 | 0.000 |
| predicted_OBP | 0.304 | 0.400 | 0.375 | Hitting_OBP | 0.347 | 0.000 | 0.053 | 0.400 |
| predicted_R | 0.653 | 1.000 | 1.000 | Hitting_R | 0.653 | 0.000 | 0.347 | 1.000 |
| predicted_RBI | 0.580 | 1.000 | 1.000 | Hitting_RBI | 0.782 | 0.000 | 0.218 | 1.000 |
| predicted_SLG | 0.424 | 0.600 | 0.286 | Hitting_SLG | 0.544 | 0.000 | 0.056 | 0.600 |
| predicted_SO | 0.795 | 0.000 | 2.000 | Hitting_SO | 0.795 | 1.000 | -0.795 | -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_H: 0.9500 -> 2.0000 (boost 1.0500, better) |
| Biggest Deboost | predicted_SO: 0.7950 -> 0.0000 (deboost -0.7950, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.1300 -> 6.6619 (boost 2.5319, 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 | 2 | 0 | 2 | 0 | predicted_AVG: 0.2404 -> 0.2490 (boost 0.0086, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 3 | 6 | predicted_BB: 0.5658 -> 1.0000 (boost 0.4342, better) | predicted_HR: 0.3118 -> 0.0000 (deboost -0.3118, worse) | AB rounded to 7 (raw=6.66), rates preserved: AVG=0.249 HR/AB=0.047 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1164 -> 1.0000 (deboost -0.1164, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3078 -> 0.3750 (boost 0.0672, better) | predicted_SLG: 0.4532 -> 0.2860 (deboost -0.1672, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4532 (boost 0.1672, better) | predicted_OBP: 0.3750 -> 0.3078 (deboost -0.0672, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "572233",
"player_name": "Christian Walker",
"position": "1B",
"team": "HOU",
"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.18,
"predicted_3B": 0.004,
"predicted_AB": 4.13,
"predicted_AVG": 0.231,
"predicted_BB": 0.385,
"predicted_H": 0.95,
"predicted_HR": 0.17,
"predicted_OBP": 0.304,
"predicted_R": 0.653,
"predicted_RBI": 0.58,
"predicted_SLG": 0.424,
"predicted_SO": 0.795
},
"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.2891,
"predicted_3B": 0.068,
"predicted_AB": 6.6619,
"predicted_AVG": 0.2404,
"predicted_BB": 0.5639,
"predicted_H": 1.6292,
"predicted_HBP": 0.13,
"predicted_HR": 0.306,
"predicted_OBP": 0.3086,
"predicted_R": 1.084,
"predicted_RBI": 1.0676,
"predicted_SLG": 0.4448,
"predicted_SO": 1.5798
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.18,
"after": 0.2891,
"delta": 0.1091,
"percent_delta": 0.6061,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.068,
"delta": 0.064,
"percent_delta": 16.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.13,
"after": 6.6619,
"delta": 2.5319,
"percent_delta": 0.6131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2404,
"delta": 0.0094,
"percent_delta": 0.0407,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.385,
"after": 0.5639,
"delta": 0.1789,
"percent_delta": 0.4647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 1.6292,
"delta": 0.6792,
"percent_delta": 0.7149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.306,
"delta": 0.136,
"percent_delta": 0.8,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.3086,
"delta": 0.0046,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.653,
"after": 1.084,
"delta": 0.431,
"percent_delta": 0.66,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 1.0676,
"delta": 0.4876,
"percent_delta": 0.8407,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.424,
"after": 0.4448,
"delta": 0.0208,
"percent_delta": 0.0491,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.795,
"after": 1.5798,
"delta": 0.7848,
"percent_delta": 0.9872,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.13,
"after": 6.6619,
"delta": 2.5319,
"percent_delta": 0.6131,
"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.2891,
"predicted_3B": 0.068,
"predicted_AB": 6.6619,
"predicted_AVG": 0.249,
"predicted_BB": 0.5658,
"predicted_H": 1.6589,
"predicted_HBP": 0.13,
"predicted_HR": 0.3118,
"predicted_OBP": 0.3078,
"predicted_R": 1.1164,
"predicted_RBI": 1.0995,
"predicted_SLG": 0.4532,
"predicted_SO": 1.5746
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2891,
"after": 0.2891,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.068,
"after": 0.068,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6619,
"after": 6.6619,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2404,
"after": 0.249,
"delta": 0.0086,
"percent_delta": 0.0358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5639,
"after": 0.5658,
"delta": 0.0019,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6292,
"after": 1.6589,
"delta": 0.0297,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.13,
"after": 0.13,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.306,
"after": 0.3118,
"delta": 0.0058,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3086,
"after": 0.3078,
"delta": -0.0008,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.084,
"after": 1.1164,
"delta": 0.0324,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0676,
"after": 1.0995,
"delta": 0.0319,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4448,
"after": 0.4532,
"delta": 0.0084,
"percent_delta": 0.0189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5798,
"after": 1.5746,
"delta": -0.0052,
"percent_delta": -0.0033,
"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.2404,
"after": 0.249,
"delta": 0.0086,
"percent_delta": 0.0358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.66), rates preserved: AVG=0.249 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2891,
"after": 0.0,
"delta": -0.2891,
"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": 6.6619,
"after": 7.0,
"delta": 0.3381,
"percent_delta": 0.0508,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5658,
"after": 1.0,
"delta": 0.4342,
"percent_delta": 0.7674,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6589,
"after": 2.0,
"delta": 0.3411,
"percent_delta": 0.2056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3118,
"after": 0.0,
"delta": -0.3118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0995,
"after": 1.0,
"delta": -0.0995,
"percent_delta": -0.0905,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5746,
"after": 2.0,
"delta": 0.4254,
"percent_delta": 0.2702,
"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.5658,
"after": 1.0,
"delta": 0.4342,
"percent_delta": 0.7674,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3118,
"after": 0.0,
"delta": -0.3118,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.1164,
"after": 1.0,
"delta": -0.1164,
"percent_delta": -0.1043,
"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": 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_R",
"before": 1.1164,
"after": 1.0,
"delta": -0.1164,
"percent_delta": -0.1043,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.286,
"delta": 0.037,
"percent_delta": 0.1486,
"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": 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_OBP",
"before": 0.3078,
"after": 0.375,
"delta": 0.0672,
"percent_delta": 0.2183,
"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.4532,
"after": 0.286,
"delta": -0.1672,
"percent_delta": -0.3689,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3078,
"after": 0.375,
"delta": 0.0672,
"percent_delta": 0.2183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4532,
"after": 0.286,
"delta": -0.1672,
"percent_delta": -0.3689,
"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": 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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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": 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_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": 2.0,
"after": 0.0,
"delta": -2.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_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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.249,
"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.3078,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4532,
"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.286,
"after": 0.249,
"delta": -0.037,
"percent_delta": -0.1294,
"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.375,
"after": 0.3078,
"delta": -0.0672,
"percent_delta": -0.1792,
"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.286,
"after": 0.4532,
"delta": 0.1672,
"percent_delta": 0.5847,
"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.286,
"after": 0.4532,
"delta": 0.1672,
"percent_delta": 0.5847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3078,
"delta": -0.0672,
"percent_delta": -0.1792,
"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.18,
"after": 1.0,
"delta": 0.82,
"percent_delta": 4.5556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.13,
"after": 5.0,
"delta": 0.87,
"percent_delta": 0.2107,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.249,
"delta": 0.018,
"percent_delta": 0.0779,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.385,
"after": 0.0,
"delta": -0.385,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 2.0,
"delta": 1.05,
"percent_delta": 1.1053,
"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.304,
"after": 0.3078,
"delta": 0.0038,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.653,
"after": 1.0,
"delta": 0.347,
"percent_delta": 0.5314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.424,
"after": 0.4532,
"delta": 0.0292,
"percent_delta": 0.0689,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.795,
"after": 0.0,
"delta": -0.795,
"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_H",
"before": 0.95,
"after": 2.0,
"delta": 1.05,
"percent_delta": 1.1053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.795,
"after": 0.0,
"delta": -0.795,
"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.180 | - |
| predicted_3B | 0.004 | - |
| predicted_AB | 4.130 | - |
| predicted_AVG | 0.231 | - |
| predicted_BB | 0.385 | - |
| predicted_H | 0.950 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.653 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.424 | - |
| predicted_SO | 0.795 | - |
Final model 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.289 | 0.109 |
| predicted_3B | 0.068 | 0.064 |
| predicted_AB | 6.662 | 2.532 |
| predicted_AVG | 0.240 | 0.009 |
| predicted_BB | 0.564 | 0.179 |
| predicted_H | 1.629 | 0.679 |
| predicted_HBP | 0.130 | - |
| predicted_HR | 0.306 | 0.136 |
| predicted_OBP | 0.309 | 0.005 |
| predicted_R | 1.084 | 0.431 |
| predicted_RBI | 1.068 | 0.488 |
| predicted_SLG | 0.445 | 0.021 |
| predicted_SO | 1.580 | 0.785 |
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.289 | 0.000 |
| predicted_3B | 0.068 | 0.000 |
| predicted_AB | 6.662 | 0.000 |
| predicted_AVG | 0.249 | 0.009 |
| predicted_BB | 0.566 | 0.002 |
| predicted_H | 1.659 | 0.030 |
| predicted_HBP | 0.130 | 0.000 |
| predicted_HR | 0.312 | 0.006 |
| predicted_OBP | 0.308 | -0.001 |
| predicted_R | 1.116 | 0.032 |
| predicted_RBI | 1.099 | 0.032 |
| predicted_SLG | 0.453 | 0.008 |
| predicted_SO | 1.575 | -0.005 |
AB rounded to 7 (raw=6.66), rates preserved: AVG=0.249 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.289 |
| predicted_3B | 0.000 | -0.068 |
| predicted_AB | 7.000 | 0.338 |
| predicted_AVG | 0.286 | 0.037 |
| predicted_BB | 1.000 | 0.434 |
| predicted_H | 2.000 | 0.341 |
| predicted_HR | 0.000 | -0.312 |
| predicted_OBP | 0.375 | 0.067 |
| predicted_R | 1.000 | -0.116 |
| predicted_RBI | 1.000 | -0.099 |
| predicted_SLG | 0.286 | -0.167 |
| predicted_SO | 2.000 | 0.425 |
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 | -2.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 0.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 | -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 | - | 20.000 | 5.000 | 1.000 | 1.000 | 0.000 | 2.000 | 3.000 | 1.000 | 7.000 | 0.2500 | 0.2857 | 0.4000 | 0.2500 | 0.0000 | 0.1000 | 0.0500 | 0.3500 |
| last_10 | 0.20 | 10 | - | 42.000 | 8.000 | 1.000 | 1.000 | 1.000 | 6.000 | 7.000 | 2.000 | 14.000 | 0.1905 | 0.2444 | 0.3333 | 0.1905 | 0.0238 | 0.1429 | 0.0476 | 0.3333 |
| season | 0.60 | 65 | - | 910.000 | 249.000 | 43.000 | 1.000 | 67.000 | 187.000 | 156.000 | 92.000 | 190.000 | 0.2736 | 0.3474 | 0.5440 | 0.2736 | 0.0736 | 0.2055 | 0.1011 | 0.2088 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4270 |
| predicted_3B | 0.1490 |
| predicted_AB | 9.8630 |
| predicted_AVG | 0.2522 |
| predicted_BB | 0.7900 |
| predicted_H | 2.4880 |
| predicted_HBP | 0.1300 |
| predicted_HR | 0.4780 |
| predicted_OBP | 0.3144 |
| predicted_R | 1.6290 |
| predicted_RBI | 1.6840 |
| predicted_SLG | 0.4712 |
| predicted_SO | 2.5720 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1800 | 0.4270 | 0.2891 | model_form_blend |
| predicted_3B | 0.0040 | 0.1490 | 0.0680 | model_form_blend |
| predicted_AB | 4.1300 | 9.8630 | 6.6619 | model_form_blend |
| predicted_AVG | 0.2310 | 0.2522 | 0.2404 | model_form_blend |
| predicted_BB | 0.3850 | 0.7900 | 0.5639 | model_form_blend |
| predicted_H | 0.9500 | 2.4880 | 1.6292 | model_form_blend |
| predicted_HBP | - | 0.1300 | 0.1300 | form_only |
| predicted_HR | 0.1700 | 0.4780 | 0.3060 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3144 | 0.3086 | model_form_blend |
| predicted_R | 0.6530 | 1.6290 | 1.0840 | model_form_blend |
| predicted_RBI | 0.5800 | 1.6840 | 1.0676 | model_form_blend |
| predicted_SLG | 0.4240 | 0.4712 | 0.4448 | model_form_blend |
| predicted_SO | 0.7950 | 2.5720 | 1.5798 | 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 | 239 |
| Season rows before report date | 239 |
| Report year | 2026 |
| Profile rows used | 239 |
| 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 | 1 |
| BB | 0 |
| 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 | 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 | 1B |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 572233 |
| playerID | 572233 |
| playerName | Christian Walker |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.2 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.352 |
| sl_xwoba | 0.321 |
| sl_xba | 0.24 |
| sl_xslg | 0.429 |
| sl_sweet_spot_percent | 29.6 |
| sl_barrel_batted_rate | 12.2 |
| sl_hard_hit_percent | 45.0 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 14.1 |
| sl_whiff_percent | 29.9 |
| 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.249 | 0.000 | 0.000 | Hitting_2B | 0.249 | 0.000 | -0.249 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.950 | 5.000 | 8.000 | Hitting_AB | 3.942 | 1.000 | 1.058 | 4.000 |
| predicted_AVG | 0.234 | 0.200 | 0.250 | Hitting_AVG | 0.255 | 0.000 | -0.055 | 0.200 |
| predicted_BB | 0.471 | 0.000 | 1.000 | Hitting_BB | 0.471 | 0.000 | -0.471 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.048 | 0.000 | -0.048 | 0.000 |
| predicted_H | 0.920 | 1.000 | 2.000 | Hitting_H | 1.005 | 0.000 | -0.005 | 1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.116 | 0.000 | -0.116 | 0.000 |
| predicted_OBP | 0.310 | 0.200 | 0.333 | Hitting_OBP | 0.336 | 0.000 | -0.136 | 0.200 |
| predicted_R | 0.698 | 0.000 | 2.000 | Hitting_R | 0.698 | 0.000 | -0.698 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.328 | 0.000 | -0.328 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_SLG | 0.414 | 0.200 | 0.250 | Hitting_SLG | 0.407 | 0.000 | -0.207 | 0.200 |
| predicted_SO | 0.857 | 0.000 | 2.000 | Hitting_SO | 0.857 | 1.000 | -0.857 | -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_AB: 3.9500 -> 5.0000 (boost 1.0500, better) |
| 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.9500 -> 8.0128 (boost 4.0628, 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.4540 -> 0.4889 (boost 0.0349, 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.8668 -> 1.0000 (boost 0.1332, better) | predicted_HR: 0.4939 -> 0.0000 (deboost -0.4939, worse) | AB rounded to 8 (raw=8.01), rates preserved: AVG=0.252 HR/AB=0.062 |
| 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: 1.5526 -> 2.0000 (boost 0.4474, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3250 -> 0.3330 (boost 0.0080, better) | predicted_SLG: 0.4889 -> 0.2500 (deboost -0.2389, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 8.0000 -> 5.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4889 (boost 0.2389, better) | predicted_OBP: 0.3330 -> 0.3250 (deboost -0.0080, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "514888",
"player_name": "Jose Altuve",
"position": "2B",
"team": "HOU",
"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.249,
"predicted_3B": 0.0,
"predicted_AB": 3.95,
"predicted_AVG": 0.234,
"predicted_BB": 0.471,
"predicted_H": 0.92,
"predicted_HR": 0.16,
"predicted_OBP": 0.31,
"predicted_R": 0.698,
"predicted_RBI": 0.41,
"predicted_SLG": 0.414,
"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.4144,
"predicted_3B": 0.0009,
"predicted_AB": 8.0128,
"predicted_AVG": 0.2424,
"predicted_BB": 0.8639,
"predicted_H": 1.9833,
"predicted_HBP": 0.055,
"predicted_HR": 0.4847,
"predicted_OBP": 0.316,
"predicted_R": 1.5075,
"predicted_RBI": 0.8693,
"predicted_SLG": 0.454,
"predicted_SO": 1.9736
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.249,
"after": 0.4144,
"delta": 0.1654,
"percent_delta": 0.6643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.95,
"after": 8.0128,
"delta": 4.0628,
"percent_delta": 1.0286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2424,
"delta": 0.0084,
"percent_delta": 0.0359,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.471,
"after": 0.8639,
"delta": 0.3929,
"percent_delta": 0.8342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 1.9833,
"delta": 1.0633,
"percent_delta": 1.1558,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.4847,
"delta": 0.3247,
"percent_delta": 2.0294,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.316,
"delta": 0.006,
"percent_delta": 0.0194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.698,
"after": 1.5075,
"delta": 0.8095,
"percent_delta": 1.1597,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.8693,
"delta": 0.4593,
"percent_delta": 1.1202,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.454,
"delta": 0.04,
"percent_delta": 0.0966,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.857,
"after": 1.9736,
"delta": 1.1166,
"percent_delta": 1.3029,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.95,
"after": 8.0128,
"delta": 4.0628,
"percent_delta": 1.0286,
"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": 4,
"last_10": 5,
"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.4144,
"predicted_3B": 0.0009,
"predicted_AB": 8.0128,
"predicted_AVG": 0.252,
"predicted_BB": 0.8668,
"predicted_H": 2.0194,
"predicted_HBP": 0.055,
"predicted_HR": 0.4939,
"predicted_OBP": 0.325,
"predicted_R": 1.5526,
"predicted_RBI": 0.8953,
"predicted_SLG": 0.4889,
"predicted_SO": 1.9671
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4144,
"after": 0.4144,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 8.0128,
"after": 8.0128,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2424,
"after": 0.252,
"delta": 0.0096,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8639,
"after": 0.8668,
"delta": 0.0029,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9833,
"after": 2.0194,
"delta": 0.0361,
"percent_delta": 0.0182,
"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.4847,
"after": 0.4939,
"delta": 0.0092,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.325,
"delta": 0.009,
"percent_delta": 0.0285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.5075,
"after": 1.5526,
"delta": 0.0451,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8693,
"after": 0.8953,
"delta": 0.026,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4889,
"delta": 0.0349,
"percent_delta": 0.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9736,
"after": 1.9671,
"delta": -0.0065,
"percent_delta": -0.0033,
"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.454,
"after": 0.4889,
"delta": 0.0349,
"percent_delta": 0.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=8.01), rates preserved: AVG=0.252 HR/AB=0.062",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4144,
"after": 0.0,
"delta": -0.4144,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 8.0128,
"after": 8.0,
"delta": -0.0128,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8668,
"after": 1.0,
"delta": 0.1332,
"percent_delta": 0.1537,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.0194,
"after": 2.0,
"delta": -0.0194,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.4939,
"after": 0.0,
"delta": -0.4939,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8953,
"after": 1.0,
"delta": 0.1047,
"percent_delta": 0.1169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9671,
"after": 2.0,
"delta": 0.0329,
"percent_delta": 0.0167,
"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.8668,
"after": 1.0,
"delta": 0.1332,
"percent_delta": 0.1537,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4939,
"after": 0.0,
"delta": -0.4939,
"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": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 8.0,
"after": 8.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": 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_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": 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": {
"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": 8.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 2.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": 8.0,
"after": 8.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": 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_R",
"before": 1.5526,
"after": 2.0,
"delta": 0.4474,
"percent_delta": 0.2882,
"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": 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_R",
"before": 1.5526,
"after": 2.0,
"delta": 0.4474,
"percent_delta": 0.2882,
"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": 8.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 2.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"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": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.25,
"delta": -0.002,
"percent_delta": -0.0079,
"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": 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_OBP",
"before": 0.325,
"after": 0.333,
"delta": 0.008,
"percent_delta": 0.0246,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 2.0,
"after": 2.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.4889,
"after": 0.25,
"delta": -0.2389,
"percent_delta": -0.4886,
"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": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.333,
"delta": 0.008,
"percent_delta": 0.0246,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4889,
"after": 0.25,
"delta": -0.2389,
"percent_delta": -0.4886,
"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": 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": 8.0,
"after": 5.0,
"delta": -3.0,
"percent_delta": -0.375,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.0,
"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_AB",
"before": 8.0,
"after": 5.0,
"delta": -3.0,
"percent_delta": -0.375,
"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.252,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.325,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4889,
"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.252,
"delta": 0.002,
"percent_delta": 0.0081,
"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.333,
"after": 0.325,
"delta": -0.008,
"percent_delta": -0.0239,
"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.4889,
"delta": 0.2389,
"percent_delta": 0.9555,
"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.4889,
"delta": 0.2389,
"percent_delta": 0.9555,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.325,
"delta": -0.008,
"percent_delta": -0.0239,
"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.249,
"after": 0.0,
"delta": -0.249,
"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.95,
"after": 5.0,
"delta": 1.05,
"percent_delta": 0.2658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.252,
"delta": 0.018,
"percent_delta": 0.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.471,
"after": 0.0,
"delta": -0.471,
"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.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.325,
"delta": 0.015,
"percent_delta": 0.0484,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.698,
"after": 0.0,
"delta": -0.698,
"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.414,
"after": 0.4889,
"delta": 0.0749,
"percent_delta": 0.1809,
"direction": "boost",
"projection_effect": "better",
"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": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.95,
"after": 5.0,
"delta": 1.05,
"percent_delta": 0.2658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"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": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.249 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.950 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.471 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.310 | - |
| predicted_R | 0.698 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.414 | - |
| 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.414 | 0.165 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 8.013 | 4.063 |
| predicted_AVG | 0.242 | 0.008 |
| predicted_BB | 0.864 | 0.393 |
| predicted_H | 1.983 | 1.063 |
| predicted_HBP | 0.055 | - |
| predicted_HR | 0.485 | 0.325 |
| predicted_OBP | 0.316 | 0.006 |
| predicted_R | 1.508 | 0.810 |
| predicted_RBI | 0.869 | 0.459 |
| predicted_SLG | 0.454 | 0.040 |
| predicted_SO | 1.974 | 1.117 |
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.414 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 8.013 | 0.000 |
| predicted_AVG | 0.252 | 0.010 |
| predicted_BB | 0.867 | 0.003 |
| predicted_H | 2.019 | 0.036 |
| predicted_HBP | 0.055 | 0.000 |
| predicted_HR | 0.494 | 0.009 |
| predicted_OBP | 0.325 | 0.009 |
| predicted_R | 1.553 | 0.045 |
| predicted_RBI | 0.895 | 0.026 |
| predicted_SLG | 0.489 | 0.035 |
| predicted_SO | 1.967 | -0.006 |
AB rounded to 8 (raw=8.01), rates preserved: AVG=0.252 HR/AB=0.062
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 2.000 | - |
| RBI | 1.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.414 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 8.000 | -0.013 |
| predicted_AVG | 0.250 | -0.002 |
| predicted_BB | 1.000 | 0.133 |
| predicted_H | 2.000 | -0.019 |
| predicted_HR | 0.000 | -0.494 |
| predicted_OBP | 0.333 | 0.008 |
| predicted_R | 2.000 | 0.447 |
| predicted_RBI | 1.000 | 0.105 |
| predicted_SLG | 0.250 | -0.239 |
| predicted_SO | 2.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 | 5.000 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -2.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.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 | 4 | - | 15.000 | 4.000 | 0.000 | 0.000 | 3.000 | 3.000 | 4.000 | 1.000 | 6.000 | 0.2667 | 0.3125 | 0.8667 | 0.2667 | 0.2000 | 0.2000 | 0.0667 | 0.4000 |
| last_10 | 0.20 | 5 | - | 35.000 | 6.000 | 0.000 | 0.000 | 5.000 | 5.000 | 6.000 | 1.000 | 11.000 | 0.1714 | 0.1944 | 0.6000 | 0.1714 | 0.1429 | 0.1429 | 0.0286 | 0.3143 |
| season | 0.60 | 45 | - | 745.000 | 190.000 | 47.000 | 0.000 | 22.000 | 62.000 | 132.000 | 89.000 | 162.000 | 0.2550 | 0.3357 | 0.4067 | 0.2550 | 0.0295 | 0.0832 | 0.1195 | 0.2175 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6250 |
| predicted_3B | 0.0020 |
| predicted_AB | 13.1850 |
| predicted_AVG | 0.2531 |
| predicted_BB | 1.3640 |
| predicted_H | 3.3370 |
| predicted_HBP | 0.0550 |
| predicted_HR | 0.8980 |
| predicted_OBP | 0.3236 |
| predicted_R | 2.5380 |
| predicted_RBI | 1.4540 |
| predicted_SLG | 0.5049 |
| predicted_SO | 3.3950 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2490 | 0.6250 | 0.4144 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.9500 | 13.1850 | 8.0128 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2531 | 0.2424 | model_form_blend |
| predicted_BB | 0.4710 | 1.3640 | 0.8639 | model_form_blend |
| predicted_H | 0.9200 | 3.3370 | 1.9833 | model_form_blend |
| predicted_HBP | - | 0.0550 | 0.0550 | form_only |
| predicted_HR | 0.1600 | 0.8980 | 0.4847 | model_form_blend |
| predicted_OBP | 0.3100 | 0.3236 | 0.3160 | model_form_blend |
| predicted_R | 0.6980 | 2.5380 | 1.5075 | model_form_blend |
| predicted_RBI | 0.4100 | 1.4540 | 0.8693 | model_form_blend |
| predicted_SLG | 0.4140 | 0.5049 | 0.4540 | model_form_blend |
| predicted_SO | 0.8570 | 3.3950 | 1.9736 | 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 | 189 |
| Season rows before report date | 189 |
| Report year | 2026 |
| Profile rows used | 189 |
| 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.255 |
| 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 | 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 | 2B |
| gameID | 20260607_OAK@HOU |
| game_type | short |
| mlbID | 514888 |
| playerID | 514888 |
| playerName | Jose Altuve |
| pos | 2B |
| started | False |
| startingPosition | 2B |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.321 |
| sl_xwoba | 0.31 |
| sl_xba | 0.247 |
| sl_xslg | 0.367 |
| sl_sweet_spot_percent | 33.1 |
| sl_barrel_batted_rate | 6.1 |
| sl_hard_hit_percent | 36.8 |
| sl_exit_velocity_avg | 86.3 |
| sl_launch_angle_avg | 8.5 |
| sl_whiff_percent | 25.5 |
| 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.333 | 1.000 | 0.000 | Hitting_2B | 0.333 | 0.000 | 0.667 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.360 | 5.000 | 3.000 | Hitting_AB | 3.333 | 1.000 | 1.667 | 4.000 |
| predicted_AVG | 0.251 | 0.600 | 0.333 | Hitting_AVG | 0.300 | 0.000 | 0.300 | 0.600 |
| 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.840 | 3.000 | 1.000 | Hitting_H | 1.000 | 0.000 | 2.000 | 3.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_OBP | 0.309 | 0.600 | 0.333 | Hitting_OBP | 0.300 | 0.000 | 0.300 | 0.600 |
| predicted_R | 0.667 | 1.000 | 1.000 | Hitting_R | 0.667 | 0.000 | 0.333 | 1.000 |
| predicted_RBI | 0.530 | 1.000 | 0.000 | Hitting_RBI | 1.000 | 0.000 | 0.000 | 1.000 |
| predicted_SLG | 0.450 | 0.800 | 0.333 | Hitting_SLG | 0.700 | 0.000 | 0.100 | 0.800 |
| predicted_SO | 1.000 | 0.000 | 1.000 | Hitting_SO | 1.000 | 0.000 | -1.000 | 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_H: 0.8400 -> 3.0000 (boost 2.1600, better) |
| Biggest Deboost | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, 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.3600 -> 3.4460 (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.4572 -> 0.4899 (boost 0.0327, better) | predicted_OBP: 0.3092 -> 0.2684 (deboost -0.0408, 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.8884 -> 1.0000 (boost 0.1116, better) | predicted_RBI: 0.5737 -> 0.0000 (deboost -0.5737, worse) | AB rounded to 3 (raw=3.45), rates preserved: AVG=0.258 HR/AB=0.047 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6582 -> 1.0000 (boost 0.3418, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2578 -> 0.3330 (boost 0.0752, better) | predicted_SLG: 0.4899 -> 0.3330 (deboost -0.1569, 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_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.4899 (boost 0.1569, better) | predicted_AVG: 0.3330 -> 0.2578 (deboost -0.0752, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664774",
"player_name": "LaMonte Wade Jr.",
"position": "LF",
"team": "HOU",
"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.333,
"predicted_3B": 0.0,
"predicted_AB": 3.36,
"predicted_AVG": 0.251,
"predicted_BB": 0.0,
"predicted_H": 0.84,
"predicted_HR": 0.15,
"predicted_OBP": 0.309,
"predicted_R": 0.667,
"predicted_RBI": 0.53,
"predicted_SLG": 0.45,
"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.3092,
"predicted_3B": 0.0025,
"predicted_AB": 3.446,
"predicted_AVG": 0.2537,
"predicted_BB": 0.0498,
"predicted_H": 0.8725,
"predicted_HBP": 0.025,
"predicted_HR": 0.1588,
"predicted_OBP": 0.3092,
"predicted_R": 0.6391,
"predicted_RBI": 0.557,
"predicted_SLG": 0.4572,
"predicted_SO": 0.9765
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.333,
"after": 0.3092,
"delta": -0.0238,
"percent_delta": -0.0715,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0025,
"delta": 0.0025,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.36,
"after": 3.446,
"delta": 0.086,
"percent_delta": 0.0256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2537,
"delta": 0.0027,
"percent_delta": 0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0498,
"delta": 0.0498,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.8725,
"delta": 0.0325,
"percent_delta": 0.0387,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1588,
"delta": 0.0088,
"percent_delta": 0.0587,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3092,
"delta": 0.0002,
"percent_delta": 0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.6391,
"delta": -0.0279,
"percent_delta": -0.0418,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.557,
"delta": 0.027,
"percent_delta": 0.0509,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.45,
"after": 0.4572,
"delta": 0.0072,
"percent_delta": 0.016,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.9765,
"delta": -0.0235,
"percent_delta": -0.0235,
"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.36,
"after": 3.446,
"delta": 0.086,
"percent_delta": 0.0256,
"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": 3,
"last_10": 3,
"season": 3
}
},
{
"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.3092,
"predicted_3B": 0.0025,
"predicted_AB": 3.446,
"predicted_AVG": 0.2578,
"predicted_BB": 0.05,
"predicted_H": 0.8884,
"predicted_HBP": 0.025,
"predicted_HR": 0.1618,
"predicted_OBP": 0.2684,
"predicted_R": 0.6582,
"predicted_RBI": 0.5737,
"predicted_SLG": 0.4899,
"predicted_SO": 0.9733
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3092,
"after": 0.3092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0025,
"after": 0.0025,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.446,
"after": 3.446,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2537,
"after": 0.2578,
"delta": 0.0041,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0498,
"after": 0.05,
"delta": 0.0002,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8725,
"after": 0.8884,
"delta": 0.0159,
"percent_delta": 0.0182,
"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.1588,
"after": 0.1618,
"delta": 0.003,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3092,
"after": 0.2684,
"delta": -0.0408,
"percent_delta": -0.132,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6391,
"after": 0.6582,
"delta": 0.0191,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.557,
"after": 0.5737,
"delta": 0.0167,
"percent_delta": 0.03,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4572,
"after": 0.4899,
"delta": 0.0327,
"percent_delta": 0.0715,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9765,
"after": 0.9733,
"delta": -0.0032,
"percent_delta": -0.0033,
"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.4572,
"after": 0.4899,
"delta": 0.0327,
"percent_delta": 0.0715,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3092,
"after": 0.2684,
"delta": -0.0408,
"percent_delta": -0.132,
"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.258 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.3092,
"after": 0.0,
"delta": -0.3092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0025,
"after": 0.0,
"delta": -0.0025,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.446,
"after": 3.0,
"delta": -0.446,
"percent_delta": -0.1294,
"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.8884,
"after": 1.0,
"delta": 0.1116,
"percent_delta": 0.1256,
"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.1618,
"after": 0.0,
"delta": -0.1618,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5737,
"after": 0.0,
"delta": -0.5737,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9733,
"after": 1.0,
"delta": 0.0267,
"percent_delta": 0.0274,
"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.8884,
"after": 1.0,
"delta": 0.1116,
"percent_delta": 0.1256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5737,
"after": 0.0,
"delta": -0.5737,
"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.6582,
"after": 1.0,
"delta": 0.3418,
"percent_delta": 0.5193,
"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.6582,
"after": 1.0,
"delta": 0.3418,
"percent_delta": 0.5193,
"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.2578,
"after": 0.333,
"delta": 0.0752,
"percent_delta": 0.2917,
"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.2684,
"after": 0.333,
"delta": 0.0646,
"percent_delta": 0.2407,
"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.4899,
"after": 0.333,
"delta": -0.1569,
"percent_delta": -0.3203,
"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.2578,
"after": 0.333,
"delta": 0.0752,
"percent_delta": 0.2917,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4899,
"after": 0.333,
"delta": -0.1569,
"percent_delta": -0.3203,
"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": 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": 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": 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": 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": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2578,
"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.2684,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4899,
"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.333,
"after": 0.2578,
"delta": -0.0752,
"percent_delta": -0.2258,
"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.2684,
"delta": -0.0646,
"percent_delta": -0.194,
"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.4899,
"delta": 0.1569,
"percent_delta": 0.471,
"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.4899,
"delta": 0.1569,
"percent_delta": 0.471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2578,
"delta": -0.0752,
"percent_delta": -0.2258,
"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.333,
"after": 1.0,
"delta": 0.667,
"percent_delta": 2.003,
"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.36,
"after": 5.0,
"delta": 1.64,
"percent_delta": 0.4881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2578,
"delta": 0.0068,
"percent_delta": 0.0271,
"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": 0.84,
"after": 3.0,
"delta": 2.16,
"percent_delta": 2.5714,
"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.309,
"after": 0.2684,
"delta": -0.0406,
"percent_delta": -0.1314,
"direction": "deboost",
"projection_effect": "worse",
"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.45,
"after": 0.4899,
"delta": 0.0399,
"percent_delta": 0.0887,
"direction": "boost",
"projection_effect": "better",
"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": 10,
"boosted_metrics": 7,
"deboosted_metrics": 3,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.84,
"after": 3.0,
"delta": 2.16,
"percent_delta": 2.5714,
"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
},
"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.333 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.360 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.667 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.450 | - |
| 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.309 | -0.024 |
| predicted_3B | 0.003 | 0.003 |
| predicted_AB | 3.446 | 0.086 |
| predicted_AVG | 0.254 | 0.003 |
| predicted_BB | 0.050 | 0.050 |
| predicted_H | 0.873 | 0.033 |
| predicted_HBP | 0.025 | - |
| predicted_HR | 0.159 | 0.009 |
| predicted_OBP | 0.309 | 0.000 |
| predicted_R | 0.639 | -0.028 |
| predicted_RBI | 0.557 | 0.027 |
| predicted_SLG | 0.457 | 0.007 |
| predicted_SO | 0.977 | -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.309 | 0.000 |
| predicted_3B | 0.003 | 0.000 |
| predicted_AB | 3.446 | 0.000 |
| predicted_AVG | 0.258 | 0.004 |
| predicted_BB | 0.050 | 0.000 |
| predicted_H | 0.888 | 0.016 |
| predicted_HBP | 0.025 | 0.000 |
| predicted_HR | 0.162 | 0.003 |
| predicted_OBP | 0.268 | -0.041 |
| predicted_R | 0.658 | 0.019 |
| predicted_RBI | 0.574 | 0.017 |
| predicted_SLG | 0.490 | 0.033 |
| predicted_SO | 0.973 | -0.003 |
AB rounded to 3 (raw=3.45), rates preserved: AVG=0.258 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 | - |
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.309 |
| predicted_3B | 0.000 | -0.003 |
| predicted_AB | 3.000 | -0.446 |
| predicted_AVG | 0.333 | 0.075 |
| predicted_BB | 0.000 | -0.050 |
| predicted_H | 1.000 | 0.112 |
| predicted_HR | 0.000 | -0.162 |
| predicted_OBP | 0.333 | 0.065 |
| predicted_R | 1.000 | 0.342 |
| predicted_RBI | 0.000 | -0.574 |
| predicted_SLG | 0.333 | -0.157 |
| 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 | 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 | 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 | 3 | - | 10.000 | 3.000 | 1.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 3.000 | 0.3000 | 0.3000 | 0.7000 | 0.3000 | 0.1000 | 0.3000 | 0.0000 | 0.3000 |
| last_10 | 0.20 | 3 | - | 10.000 | 3.000 | 1.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 3.000 | 0.3000 | 0.3000 | 0.7000 | 0.3000 | 0.1000 | 0.3000 | 0.0000 | 0.3000 |
| season | 0.60 | 3 | - | 10.000 | 3.000 | 1.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 3.000 | 0.3000 | 0.3000 | 0.7000 | 0.3000 | 0.1000 | 0.3000 | 0.0000 | 0.3000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2300 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.7330 |
| predicted_AVG | 0.2627 |
| predicted_BB | 0.2160 |
| predicted_H | 0.9810 |
| predicted_HBP | 0.0250 |
| predicted_HR | 0.1880 |
| predicted_OBP | 0.3100 |
| predicted_R | 0.5460 |
| predicted_RBI | 0.6470 |
| predicted_SLG | 0.4813 |
| predicted_SO | 0.8980 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3330 | 0.2300 | 0.3092 | model_form_blend |
| predicted_3B | 0.0000 | 0.0110 | 0.0025 | model_form_blend |
| predicted_AB | 3.3600 | 3.7330 | 3.4460 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2627 | 0.2537 | model_form_blend |
| predicted_BB | 0.0000 | 0.2160 | 0.0498 | model_form_blend |
| predicted_H | 0.8400 | 0.9810 | 0.8725 | model_form_blend |
| predicted_HBP | - | 0.0250 | 0.0250 | form_only |
| predicted_HR | 0.1500 | 0.1880 | 0.1588 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3100 | 0.3092 | model_form_blend |
| predicted_R | 0.6670 | 0.5460 | 0.6391 | model_form_blend |
| predicted_RBI | 0.5300 | 0.6470 | 0.5570 | model_form_blend |
| predicted_SLG | 0.4500 | 0.4813 | 0.4572 | model_form_blend |
| predicted_SO | 1.0000 | 0.8980 | 0.9765 | 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 | 3 |
| Season rows before report date | 3 |
| Report year | 2026 |
| Profile rows used | 3 |
| 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 | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| 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 | 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 | 8 |
| 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-LF |
| gameID | 20260607_OAK@HOU |
| game_type | ph |
| mlbID | 664774 |
| note | Lined out for Matthews in the 7th. |
| playerID | 664774 |
| playerName | LaMonte Wade Jr. |
| pos | 1B |
| started | False |
| startingPosition | PH |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 30.0 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.424 |
| sl_xwoba | 0.283 |
| sl_xba | 0.213 |
| sl_xslg | 0.465 |
| sl_sweet_spot_percent | 57.1 |
| sl_barrel_batted_rate | 14.3 |
| sl_hard_hit_percent | 42.9 |
| sl_exit_velocity_avg | 82.8 |
| sl_launch_angle_avg | -3.2 |
| sl_whiff_percent | 23.8 |
| 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.145 | 0.000 | 0.000 | Hitting_2B | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_3B | 0.005 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 3.502 | 5.000 | 6.000 | Hitting_AB | 3.471 | 3.000 | 1.529 | 2.000 |
| predicted_AVG | 0.238 | 0.400 | 0.167 | Hitting_AVG | 0.220 | 0.667 | 0.180 | -0.267 |
| predicted_BB | 0.412 | 0.000 | 1.000 | Hitting_BB | 0.408 | 1.000 | -0.408 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.013 | 0.000 | -0.013 | 0.000 |
| predicted_H | 0.770 | 2.000 | 1.000 | Hitting_H | 0.762 | 2.000 | 1.238 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.090 | 0.000 | -0.090 | 0.000 |
| predicted_OBP | 0.313 | 0.400 | 0.286 | Hitting_OBP | 0.313 | 0.750 | 0.087 | -0.350 |
| predicted_R | 0.452 | 0.000 | 1.000 | Hitting_R | 0.448 | 0.000 | -0.448 | 0.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.408 | 0.000 | -0.408 | 0.000 |
| predicted_SLG | 0.379 | 0.400 | 0.167 | Hitting_SLG | 0.341 | 0.667 | 0.059 | -0.267 |
| predicted_SO | 1.095 | 0.000 | 2.000 | Hitting_SO | 1.085 | 1.000 | -1.085 | -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 | 3 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.5020 -> 5.0000 (boost 1.4980, better) |
| Biggest Deboost | predicted_SO: 1.0950 -> 0.0000 (deboost -1.0950, 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 | 10 | 9 | 1 | 8 | 2 | predicted_AB: 3.5020 -> 5.8475 (boost 2.3455, better) | predicted_SLG: 0.3790 -> 0.3710 (deboost -0.0080, 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.3710 -> 0.3626 (deboost -0.0084, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 3 | 6 | predicted_BB: 0.7174 -> 1.0000 (boost 0.2826, better) | predicted_H: 1.3639 -> 1.0000 (deboost -0.3639, worse) | AB rounded to 6 (raw=5.85), rates preserved: AVG=0.233 HR/AB=0.024 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6247 -> 1.0000 (boost 0.3753, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3626 -> 0.1670 (deboost -0.1956, 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_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_SO: 2.0000 -> 0.0000 (deboost -2.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3626 (boost 0.1956, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "701358",
"player_name": "Cam Smith",
"position": "RF",
"team": "HOU",
"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.005,
"predicted_AB": 3.502,
"predicted_AVG": 0.238,
"predicted_BB": 0.412,
"predicted_H": 0.77,
"predicted_HR": 0.1,
"predicted_OBP": 0.313,
"predicted_R": 0.452,
"predicted_RBI": 0.43,
"predicted_SLG": 0.379,
"predicted_SO": 1.095
},
"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.2014,
"predicted_3B": 0.0667,
"predicted_AB": 5.8475,
"predicted_AVG": 0.2361,
"predicted_BB": 0.715,
"predicted_H": 1.3395,
"predicted_HBP": 0.12,
"predicted_HR": 0.1379,
"predicted_OBP": 0.3185,
"predicted_R": 0.6066,
"predicted_RBI": 0.7828,
"predicted_SLG": 0.371,
"predicted_SO": 1.8328
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.145,
"after": 0.2014,
"delta": 0.0564,
"percent_delta": 0.389,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.005,
"after": 0.0667,
"delta": 0.0617,
"percent_delta": 12.34,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.502,
"after": 5.8475,
"delta": 2.3455,
"percent_delta": 0.6698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2361,
"delta": -0.0019,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.412,
"after": 0.715,
"delta": 0.303,
"percent_delta": 0.7354,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.3395,
"delta": 0.5695,
"percent_delta": 0.7396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1379,
"delta": 0.0379,
"percent_delta": 0.379,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3185,
"delta": 0.0055,
"percent_delta": 0.0176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.452,
"after": 0.6066,
"delta": 0.1546,
"percent_delta": 0.342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.7828,
"delta": 0.3528,
"percent_delta": 0.8205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.379,
"after": 0.371,
"delta": -0.008,
"percent_delta": -0.0211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.095,
"after": 1.8328,
"delta": 0.7378,
"percent_delta": 0.6738,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 9,
"deboosted_metrics": 1,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.502,
"after": 5.8475,
"delta": 2.3455,
"percent_delta": 0.6698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.379,
"after": 0.371,
"delta": -0.008,
"percent_delta": -0.0211,
"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": 9,
"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.2014,
"predicted_3B": 0.0667,
"predicted_AB": 5.8475,
"predicted_AVG": 0.2332,
"predicted_BB": 0.7174,
"predicted_H": 1.3639,
"predicted_HBP": 0.12,
"predicted_HR": 0.1405,
"predicted_OBP": 0.317,
"predicted_R": 0.6247,
"predicted_RBI": 0.8062,
"predicted_SLG": 0.3626,
"predicted_SO": 1.8268
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2014,
"after": 0.2014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0667,
"after": 0.0667,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.8475,
"after": 5.8475,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2361,
"after": 0.2332,
"delta": -0.0029,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.715,
"after": 0.7174,
"delta": 0.0024,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3395,
"after": 1.3639,
"delta": 0.0244,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.12,
"after": 0.12,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1379,
"after": 0.1405,
"delta": 0.0026,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3185,
"after": 0.317,
"delta": -0.0015,
"percent_delta": -0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6066,
"after": 0.6247,
"delta": 0.0181,
"percent_delta": 0.0298,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7828,
"after": 0.8062,
"delta": 0.0234,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.3626,
"delta": -0.0084,
"percent_delta": -0.0226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8328,
"after": 1.8268,
"delta": -0.006,
"percent_delta": -0.0033,
"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.371,
"after": 0.3626,
"delta": -0.0084,
"percent_delta": -0.0226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.85), rates preserved: AVG=0.233 HR/AB=0.024",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2014,
"after": 0.0,
"delta": -0.2014,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0667,
"after": 0.0,
"delta": -0.0667,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.8475,
"after": 6.0,
"delta": 0.1525,
"percent_delta": 0.0261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7174,
"after": 1.0,
"delta": 0.2826,
"percent_delta": 0.3939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3639,
"after": 1.0,
"delta": -0.3639,
"percent_delta": -0.2668,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1405,
"after": 0.0,
"delta": -0.1405,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8062,
"after": 1.0,
"delta": 0.1938,
"percent_delta": 0.2404,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8268,
"after": 2.0,
"delta": 0.1732,
"percent_delta": 0.0948,
"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.7174,
"after": 1.0,
"delta": 0.2826,
"percent_delta": 0.3939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3639,
"after": 1.0,
"delta": -0.3639,
"percent_delta": -0.2668,
"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": 6.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": 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": 6.0,
"after": 6.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.6247,
"after": 1.0,
"delta": 0.3753,
"percent_delta": 0.6008,
"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": 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_R",
"before": 0.6247,
"after": 1.0,
"delta": 0.3753,
"percent_delta": 0.6008,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2332,
"after": 0.167,
"delta": -0.0662,
"percent_delta": -0.2839,
"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.317,
"after": 0.286,
"delta": -0.031,
"percent_delta": -0.0978,
"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.3626,
"after": 0.167,
"delta": -0.1956,
"percent_delta": -0.5394,
"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_SLG",
"before": 0.3626,
"after": 0.167,
"delta": -0.1956,
"percent_delta": -0.5394,
"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": 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": 6.0,
"after": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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": 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": 2.0,
"after": 0.0,
"delta": -2.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_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": 2.0,
"after": 0.0,
"delta": -2.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.2332,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.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.3626,
"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.167,
"after": 0.2332,
"delta": 0.0662,
"percent_delta": 0.3967,
"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.286,
"after": 0.317,
"delta": 0.031,
"percent_delta": 0.1085,
"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.167,
"after": 0.3626,
"delta": 0.1956,
"percent_delta": 1.1712,
"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.167,
"after": 0.3626,
"delta": 0.1956,
"percent_delta": 1.1712,
"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.145,
"after": 0.0,
"delta": -0.145,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.502,
"after": 5.0,
"delta": 1.498,
"percent_delta": 0.4278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2332,
"delta": -0.0048,
"percent_delta": -0.0202,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.412,
"after": 0.0,
"delta": -0.412,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 2.0,
"delta": 1.23,
"percent_delta": 1.5974,
"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.313,
"after": 0.317,
"delta": 0.004,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.379,
"after": 0.3626,
"delta": -0.0164,
"percent_delta": -0.0433,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.095,
"after": 0.0,
"delta": -1.095,
"percent_delta": -1.0,
"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_AB",
"before": 3.502,
"after": 5.0,
"delta": 1.498,
"percent_delta": 0.4278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.095,
"after": 0.0,
"delta": -1.095,
"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.145 | - |
| predicted_3B | 0.005 | - |
| predicted_AB | 3.502 | - |
| predicted_AVG | 0.238 | - |
| predicted_BB | 0.412 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.313 | - |
| predicted_R | 0.452 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.379 | - |
| predicted_SO | 1.095 | - |
Final model 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.056 |
| predicted_3B | 0.067 | 0.062 |
| predicted_AB | 5.848 | 2.346 |
| predicted_AVG | 0.236 | -0.002 |
| predicted_BB | 0.715 | 0.303 |
| predicted_H | 1.339 | 0.569 |
| predicted_HBP | 0.120 | - |
| predicted_HR | 0.138 | 0.038 |
| predicted_OBP | 0.319 | 0.006 |
| predicted_R | 0.607 | 0.155 |
| predicted_RBI | 0.783 | 0.353 |
| predicted_SLG | 0.371 | -0.008 |
| predicted_SO | 1.833 | 0.738 |
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.067 | 0.000 |
| predicted_AB | 5.848 | 0.000 |
| predicted_AVG | 0.233 | -0.003 |
| predicted_BB | 0.717 | 0.002 |
| predicted_H | 1.364 | 0.024 |
| predicted_HBP | 0.120 | 0.000 |
| predicted_HR | 0.141 | 0.003 |
| predicted_OBP | 0.317 | -0.002 |
| predicted_R | 0.625 | 0.018 |
| predicted_RBI | 0.806 | 0.023 |
| predicted_SLG | 0.363 | -0.008 |
| predicted_SO | 1.827 | -0.006 |
AB rounded to 6 (raw=5.85), rates preserved: AVG=0.233 HR/AB=0.024
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 6.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 | 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.201 |
| predicted_3B | 0.000 | -0.067 |
| predicted_AB | 6.000 | 0.152 |
| predicted_AVG | 0.167 | -0.066 |
| predicted_BB | 1.000 | 0.283 |
| predicted_H | 1.000 | -0.364 |
| predicted_HR | 0.000 | -0.141 |
| predicted_OBP | 0.286 | -0.031 |
| predicted_R | 1.000 | 0.375 |
| predicted_RBI | 1.000 | 0.194 |
| predicted_SLG | 0.167 | -0.196 |
| predicted_SO | 2.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 | 5.000 | -1.000 |
| BB | 0.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 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.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 | 4.000 | 0.000 | 1.000 | 0.000 | 3.000 | 0.000 | 3.000 | 7.000 | 0.2222 | 0.3333 | 0.3333 | 0.2222 | 0.0000 | 0.1667 | 0.1667 | 0.3889 |
| last_10 | 0.20 | 9 | - | 37.000 | 11.000 | 1.000 | 1.000 | 1.000 | 7.000 | 2.000 | 4.000 | 9.000 | 0.2973 | 0.3659 | 0.4595 | 0.2973 | 0.0270 | 0.1892 | 0.1081 | 0.2432 |
| season | 0.60 | 64 | - | 774.000 | 170.000 | 32.000 | 1.000 | 20.000 | 91.000 | 100.000 | 91.000 | 242.000 | 0.2196 | 0.3127 | 0.3411 | 0.2196 | 0.0258 | 0.1176 | 0.1176 | 0.3127 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2730 |
| predicted_3B | 0.1450 |
| predicted_AB | 8.8270 |
| predicted_AVG | 0.2336 |
| predicted_BB | 1.1000 |
| predicted_H | 2.0630 |
| predicted_HBP | 0.1200 |
| predicted_HR | 0.1860 |
| predicted_OBP | 0.3255 |
| predicted_R | 0.8030 |
| predicted_RBI | 1.2310 |
| predicted_SLG | 0.3608 |
| predicted_SO | 2.7700 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1450 | 0.2730 | 0.2014 | model_form_blend |
| predicted_3B | 0.0050 | 0.1450 | 0.0667 | model_form_blend |
| predicted_AB | 3.5020 | 8.8270 | 5.8475 | model_form_blend |
| predicted_AVG | 0.2380 | 0.2336 | 0.2361 | model_form_blend |
| predicted_BB | 0.4120 | 1.1000 | 0.7150 | model_form_blend |
| predicted_H | 0.7700 | 2.0630 | 1.3395 | model_form_blend |
| predicted_HBP | - | 0.1200 | 0.1200 | form_only |
| predicted_HR | 0.1000 | 0.1860 | 0.1379 | model_form_blend |
| predicted_OBP | 0.3130 | 0.3255 | 0.3185 | model_form_blend |
| predicted_R | 0.4520 | 0.8030 | 0.6066 | model_form_blend |
| predicted_RBI | 0.4300 | 1.2310 | 0.7828 | model_form_blend |
| predicted_SLG | 0.3790 | 0.3608 | 0.3710 | model_form_blend |
| predicted_SO | 1.0950 | 2.7700 | 1.8328 | 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 | 223 |
| Season rows before report date | 223 |
| Report year | 2026 |
| Profile rows used | 221 |
| 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 | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.22 |
| 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 | 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 | RF |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 701358 |
| playerID | 701358 |
| playerName | Cam Smith |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 27.1 |
| sl_bb_percent | 10.1 |
| sl_woba | 0.298 |
| sl_xwoba | 0.337 |
| sl_xba | 0.243 |
| sl_xslg | 0.44 |
| sl_sweet_spot_percent | 31.3 |
| sl_barrel_batted_rate | 12.8 |
| sl_hard_hit_percent | 44.0 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 10.7 |
| sl_whiff_percent | 31.5 |
| 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.275 | 1.000 | 0.000 | Hitting_2B | 0.269 | 0.000 | 0.731 | 1.000 |
| predicted_3B | 0.078 | 0.000 | 0.000 | Hitting_3B | 0.077 | 0.000 | -0.077 | 0.000 |
| predicted_AB | 3.392 | 4.000 | 5.000 | Hitting_AB | 3.327 | 1.000 | 0.673 | 3.000 |
| predicted_AVG | 0.249 | 0.500 | 0.200 | Hitting_AVG | 0.335 | 0.000 | 0.165 | 0.500 |
| predicted_BB | 0.235 | 1.000 | 0.000 | Hitting_BB | 0.250 | 0.000 | 0.750 | 1.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.115 | 0.000 | 0.885 | 2.000 |
| predicted_HR | 0.020 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.299 | 0.600 | 0.200 | Hitting_OBP | 0.385 | 0.000 | 0.215 | 0.600 |
| predicted_R | 0.529 | 1.000 | 1.000 | Hitting_R | 0.519 | 0.000 | 0.481 | 1.000 |
| predicted_RBI | 0.130 | 1.000 | 0.000 | Hitting_RBI | 0.462 | 0.000 | 0.538 | 1.000 |
| predicted_SLG | 0.374 | 0.750 | 0.200 | Hitting_SLG | 0.462 | 0.000 | 0.288 | 0.750 |
| predicted_SO | 1.176 | 2.000 | 2.000 | Hitting_SO | 1.154 | 0.000 | 0.846 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_H: 0.2800 -> 2.0000 (boost 1.7200, better) |
| Biggest Deboost | predicted_3B: 0.0780 -> 0.0000 (deboost -0.0780, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.3920 -> 4.5354 (boost 1.1434, 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.2646 -> 0.2003 (deboost -0.0643, 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: 4.5354 -> 5.0000 (boost 0.4646, better) | predicted_2B: 0.3577 -> 0.0000 (deboost -0.3577, worse) | AB rounded to 5 (raw=4.54), rates preserved: AVG=0.200 HR/AB=0.005 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6688 -> 1.0000 (boost 0.3312, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3298 -> 0.2000 (deboost -0.1298, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 4 | 1 | 4 | 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 | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2000 -> 0.3298 (boost 0.1298, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666211",
"player_name": "Taylor Trammell",
"position": "CF",
"team": "HOU",
"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.275,
"predicted_3B": 0.078,
"predicted_AB": 3.392,
"predicted_AVG": 0.249,
"predicted_BB": 0.235,
"predicted_H": 0.28,
"predicted_HR": 0.02,
"predicted_OBP": 0.299,
"predicted_R": 0.529,
"predicted_RBI": 0.13,
"predicted_SLG": 0.374,
"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.3577,
"predicted_3B": 0.0788,
"predicted_AB": 4.5354,
"predicted_AVG": 0.2646,
"predicted_BB": 0.3062,
"predicted_H": 0.892,
"predicted_HBP": 0.054,
"predicted_HR": 0.0237,
"predicted_OBP": 0.3146,
"predicted_R": 0.6494,
"predicted_RBI": 0.3449,
"predicted_SLG": 0.3864,
"predicted_SO": 1.5846
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.275,
"after": 0.3577,
"delta": 0.0827,
"percent_delta": 0.3007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.078,
"after": 0.0788,
"delta": 0.0008,
"percent_delta": 0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.392,
"after": 4.5354,
"delta": 1.1434,
"percent_delta": 0.3371,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2646,
"delta": 0.0156,
"percent_delta": 0.0627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.235,
"after": 0.3062,
"delta": 0.0712,
"percent_delta": 0.303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 0.892,
"delta": 0.612,
"percent_delta": 2.1857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.02,
"after": 0.0237,
"delta": 0.0037,
"percent_delta": 0.185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.3146,
"delta": 0.0156,
"percent_delta": 0.0522,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.529,
"after": 0.6494,
"delta": 0.1204,
"percent_delta": 0.2276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.3449,
"delta": 0.2149,
"percent_delta": 1.6531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3864,
"delta": 0.0124,
"percent_delta": 0.0332,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.176,
"after": 1.5846,
"delta": 0.4086,
"percent_delta": 0.3474,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.392,
"after": 4.5354,
"delta": 1.1434,
"percent_delta": 0.3371,
"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": 9,
"season": 20
}
},
{
"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.3577,
"predicted_3B": 0.0788,
"predicted_AB": 4.5354,
"predicted_AVG": 0.2003,
"predicted_BB": 0.3072,
"predicted_H": 0.9082,
"predicted_HBP": 0.054,
"predicted_HR": 0.0242,
"predicted_OBP": 0.251,
"predicted_R": 0.6688,
"predicted_RBI": 0.3552,
"predicted_SLG": 0.3298,
"predicted_SO": 1.5794
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3577,
"after": 0.3577,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0788,
"after": 0.0788,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5354,
"after": 4.5354,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2646,
"after": 0.2003,
"delta": -0.0643,
"percent_delta": -0.243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3062,
"after": 0.3072,
"delta": 0.001,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.892,
"after": 0.9082,
"delta": 0.0162,
"percent_delta": 0.0182,
"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.0237,
"after": 0.0242,
"delta": 0.0005,
"percent_delta": 0.0211,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3146,
"after": 0.251,
"delta": -0.0636,
"percent_delta": -0.2022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6494,
"after": 0.6688,
"delta": 0.0194,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3449,
"after": 0.3552,
"delta": 0.0103,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3864,
"after": 0.3298,
"delta": -0.0566,
"percent_delta": -0.1465,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5846,
"after": 1.5794,
"delta": -0.0052,
"percent_delta": -0.0033,
"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.2646,
"after": 0.2003,
"delta": -0.0643,
"percent_delta": -0.243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.54), rates preserved: AVG=0.200 HR/AB=0.005",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3577,
"after": 0.0,
"delta": -0.3577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0788,
"after": 0.0,
"delta": -0.0788,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.5354,
"after": 5.0,
"delta": 0.4646,
"percent_delta": 0.1024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3072,
"after": 0.0,
"delta": -0.3072,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9082,
"after": 1.0,
"delta": 0.0918,
"percent_delta": 0.1011,
"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.0242,
"after": 0.0,
"delta": -0.0242,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3552,
"after": 0.0,
"delta": -0.3552,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5794,
"after": 2.0,
"delta": 0.4206,
"percent_delta": 0.2663,
"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": 4.5354,
"after": 5.0,
"delta": 0.4646,
"percent_delta": 0.1024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3577,
"after": 0.0,
"delta": -0.3577,
"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": 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": 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.6688,
"after": 1.0,
"delta": 0.3312,
"percent_delta": 0.4952,
"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": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6688,
"after": 1.0,
"delta": 0.3312,
"percent_delta": 0.4952,
"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": 0.0,
"predicted_SLG": 0.2,
"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.2003,
"after": 0.2,
"delta": -0.0003,
"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_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.251,
"after": 0.2,
"delta": -0.051,
"percent_delta": -0.2032,
"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.3298,
"after": 0.2,
"delta": -0.1298,
"percent_delta": -0.3936,
"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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3298,
"after": 0.2,
"delta": -0.1298,
"percent_delta": -0.3936,
"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": 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": 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": 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": 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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_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.2003,
"predicted_BB": 1.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.251,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3298,
"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.2,
"after": 0.2003,
"delta": 0.0003,
"percent_delta": 0.0013,
"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.2,
"after": 0.251,
"delta": 0.051,
"percent_delta": 0.2549,
"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.3298,
"delta": 0.1298,
"percent_delta": 0.6492,
"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.2,
"after": 0.3298,
"delta": 0.1298,
"percent_delta": 0.6492,
"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.275,
"after": 1.0,
"delta": 0.725,
"percent_delta": 2.6364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.078,
"after": 0.0,
"delta": -0.078,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.392,
"after": 4.0,
"delta": 0.608,
"percent_delta": 0.1792,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2003,
"delta": -0.0487,
"percent_delta": -0.1956,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.235,
"after": 1.0,
"delta": 0.765,
"percent_delta": 3.2553,
"direction": "boost",
"projection_effect": "better",
"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.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.251,
"delta": -0.048,
"percent_delta": -0.1605,
"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.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3298,
"delta": -0.0442,
"percent_delta": -0.1182,
"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": 11,
"boosted_metrics": 7,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.28,
"after": 2.0,
"delta": 1.72,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_3B",
"before": 0.078,
"after": 0.0,
"delta": -0.078,
"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.275 | - |
| predicted_3B | 0.078 | - |
| predicted_AB | 3.392 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.235 | - |
| predicted_H | 0.280 | - |
| predicted_HR | 0.020 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.529 | - |
| predicted_RBI | 0.130 | - |
| predicted_SLG | 0.374 | - |
| 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.358 | 0.083 |
| predicted_3B | 0.079 | 0.001 |
| predicted_AB | 4.535 | 1.143 |
| predicted_AVG | 0.265 | 0.016 |
| predicted_BB | 0.306 | 0.071 |
| predicted_H | 0.892 | 0.612 |
| predicted_HBP | 0.054 | - |
| predicted_HR | 0.024 | 0.004 |
| predicted_OBP | 0.315 | 0.016 |
| predicted_R | 0.649 | 0.120 |
| predicted_RBI | 0.345 | 0.215 |
| predicted_SLG | 0.386 | 0.012 |
| predicted_SO | 1.585 | 0.409 |
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.358 | 0.000 |
| predicted_3B | 0.079 | 0.000 |
| predicted_AB | 4.535 | 0.000 |
| predicted_AVG | 0.200 | -0.064 |
| predicted_BB | 0.307 | 0.001 |
| predicted_H | 0.908 | 0.016 |
| predicted_HBP | 0.054 | 0.000 |
| predicted_HR | 0.024 | 0.001 |
| predicted_OBP | 0.251 | -0.064 |
| predicted_R | 0.669 | 0.019 |
| predicted_RBI | 0.355 | 0.010 |
| predicted_SLG | 0.330 | -0.057 |
| predicted_SO | 1.579 | -0.005 |
AB rounded to 5 (raw=4.54), rates preserved: AVG=0.200 HR/AB=0.005
| 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 | 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 | 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 | 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.358 |
| predicted_3B | 0.000 | -0.079 |
| predicted_AB | 5.000 | 0.465 |
| predicted_AVG | 0.200 | -0.000 |
| predicted_BB | 0.000 | -0.307 |
| predicted_H | 1.000 | 0.092 |
| predicted_HR | 0.000 | -0.024 |
| predicted_OBP | 0.200 | -0.051 |
| predicted_R | 1.000 | 0.331 |
| predicted_RBI | 0.000 | -0.355 |
| predicted_SLG | 0.200 | -0.130 |
| predicted_SO | 2.000 | 0.421 |
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 | 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 | 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 | 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 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 5.000 | 0.2308 | 0.2857 | 0.3077 | 0.2308 | 0.0000 | 0.0000 | 0.0769 | 0.3846 |
| last_10 | 0.20 | 9 | - | 33.000 | 7.000 | 3.000 | 0.000 | 0.000 | 3.000 | 4.000 | 1.000 | 15.000 | 0.2121 | 0.2571 | 0.3030 | 0.2121 | 0.0000 | 0.0909 | 0.0303 | 0.4546 |
| season | 0.60 | 20 | - | 173.000 | 58.000 | 14.000 | 4.000 | 0.000 | 24.000 | 27.000 | 12.000 | 60.000 | 0.3353 | 0.3817 | 0.4624 | 0.3353 | 0.0000 | 0.1387 | 0.0694 | 0.3468 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4770 |
| predicted_3B | 0.0800 |
| predicted_AB | 6.1850 |
| predicted_AVG | 0.2871 |
| predicted_BB | 0.4090 |
| predicted_H | 1.7750 |
| predicted_HBP | 0.0540 |
| predicted_HR | 0.0290 |
| predicted_OBP | 0.3371 |
| predicted_R | 0.8230 |
| predicted_RBI | 0.6550 |
| predicted_SLG | 0.4043 |
| predicted_SO | 2.1740 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2750 | 0.4770 | 0.3577 | model_form_blend |
| predicted_3B | 0.0780 | 0.0800 | 0.0788 | model_form_blend |
| predicted_AB | 3.3920 | 6.1850 | 4.5354 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2871 | 0.2646 | model_form_blend |
| predicted_BB | 0.2350 | 0.4090 | 0.3062 | model_form_blend |
| predicted_H | 0.2800 | 1.7750 | 0.8920 | model_form_blend |
| predicted_HBP | - | 0.0540 | 0.0540 | form_only |
| predicted_HR | 0.0200 | 0.0290 | 0.0237 | model_form_blend |
| predicted_OBP | 0.2990 | 0.3371 | 0.3146 | model_form_blend |
| predicted_R | 0.5290 | 0.8230 | 0.6494 | model_form_blend |
| predicted_RBI | 0.1300 | 0.6550 | 0.3449 | model_form_blend |
| predicted_SLG | 0.3740 | 0.4043 | 0.3864 | model_form_blend |
| predicted_SO | 1.1760 | 2.1740 | 1.5846 | 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 | 52 |
| Season rows before report date | 52 |
| 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 | 5 |
| AB | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.335 |
| 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 | PR-LF |
| gameID | 20260607_OAK@HOU |
| game_type | ph |
| mlbID | 666211 |
| note | Ran for Allen, N in the 3rd. |
| playerID | 666211 |
| playerName | Taylor Trammell |
| pos | CF |
| started | False |
| startingPosition | PR |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-07 |
| sl_k_percent | 33.8 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.335 |
| sl_xwoba | 0.262 |
| sl_xba | 0.208 |
| sl_xslg | 0.304 |
| sl_sweet_spot_percent | 26.8 |
| sl_barrel_batted_rate | 4.9 |
| sl_hard_hit_percent | 31.7 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 7.8 |
| sl_whiff_percent | 40.0 |
| sl_swing_percent | 46.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.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 | 3.000 | 3.000 | Hitting_AB | 2.000 | 1.000 | 1.000 | 2.000 |
| predicted_AVG | 0.271 | 0.000 | 0.333 | Hitting_AVG | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_BB | 0.625 | 1.000 | 1.000 | Hitting_BB | 0.500 | 0.000 | 0.500 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.490 | 0.000 | 1.000 | Hitting_H | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.299 | 0.400 | 0.500 | Hitting_OBP | 0.200 | 0.000 | 0.200 | 0.400 |
| predicted_R | 0.000 | 0.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.358 | 0.000 | 0.333 | Hitting_SLG | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SO | 1.250 | 0.000 | 1.000 | Hitting_SO | 1.000 | 0.000 | -1.000 | 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: 2.5000 -> 3.0000 (boost 0.5000, better) |
| Biggest Deboost | predicted_SO: 1.2500 -> 0.0000 (deboost -1.2500, 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 | 3 | 3 | 4 | 2 | predicted_AB: 2.5000 -> 2.7192 (boost 0.2192, better) | predicted_SO: 1.2500 -> 1.1878 (deboost -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 | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2986 -> 0.3435 (boost 0.0449, better) | predicted_AVG: 0.2597 -> 0.2045 (deboost -0.0552, 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 | 4 | 2 | predicted_H: 0.5561 -> 1.0000 (boost 0.4439, better) | predicted_RBI: 0.3058 -> 0.0000 (deboost -0.3058, worse) | AB rounded to 3 (raw=2.72), rates preserved: AVG=0.205 HR/AB=0.029 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.0813 -> 0.0000 (deboost -0.0813, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_OBP: 0.3435 -> 0.5000 (boost 0.1565, 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_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 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.5000 -> 0.3435 (deboost -0.1565, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805672",
"player_name": "Collin Price",
"position": "C",
"team": "HOU",
"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.271,
"predicted_BB": 0.625,
"predicted_H": 0.49,
"predicted_HR": 0.07,
"predicted_OBP": 0.299,
"predicted_R": 0.0,
"predicted_RBI": 0.27,
"predicted_SLG": 0.358,
"predicted_SO": 1.25
},
"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.0301,
"predicted_3B": 0.0024,
"predicted_AB": 2.7192,
"predicted_AVG": 0.2597,
"predicted_BB": 0.5736,
"predicted_H": 0.5462,
"predicted_HBP": 0.028,
"predicted_HR": 0.0768,
"predicted_OBP": 0.2986,
"predicted_R": 0.0789,
"predicted_RBI": 0.2969,
"predicted_SLG": 0.3564,
"predicted_SO": 1.1878
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0301,
"delta": 0.0301,
"percent_delta": null,
"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": 2.5,
"after": 2.7192,
"delta": 0.2192,
"percent_delta": 0.0877,
"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.625,
"after": 0.5736,
"delta": -0.0514,
"percent_delta": -0.0822,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.49,
"after": 0.5462,
"delta": 0.0562,
"percent_delta": 0.1147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0768,
"delta": 0.0068,
"percent_delta": 0.0971,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2986,
"delta": -0.0004,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0789,
"delta": 0.0789,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2969,
"delta": 0.0269,
"percent_delta": 0.0996,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.3564,
"delta": -0.0016,
"percent_delta": -0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.25,
"after": 1.1878,
"delta": -0.0622,
"percent_delta": -0.0498,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 2.7192,
"delta": 0.2192,
"percent_delta": 0.0877,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.25,
"after": 1.1878,
"delta": -0.0622,
"percent_delta": -0.0498,
"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": 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.0301,
"predicted_3B": 0.0024,
"predicted_AB": 2.7192,
"predicted_AVG": 0.2045,
"predicted_BB": 0.5755,
"predicted_H": 0.5561,
"predicted_HBP": 0.028,
"predicted_HR": 0.0783,
"predicted_OBP": 0.3435,
"predicted_R": 0.0813,
"predicted_RBI": 0.3058,
"predicted_SLG": 0.3037,
"predicted_SO": 1.1839
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0301,
"after": 0.0301,
"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": 2.7192,
"after": 2.7192,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2597,
"after": 0.2045,
"delta": -0.0552,
"percent_delta": -0.2126,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5736,
"after": 0.5755,
"delta": 0.0019,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5462,
"after": 0.5561,
"delta": 0.0099,
"percent_delta": 0.0181,
"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.0768,
"after": 0.0783,
"delta": 0.0015,
"percent_delta": 0.0195,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2986,
"after": 0.3435,
"delta": 0.0449,
"percent_delta": 0.1504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0789,
"after": 0.0813,
"delta": 0.0024,
"percent_delta": 0.0304,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2969,
"after": 0.3058,
"delta": 0.0089,
"percent_delta": 0.03,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3564,
"after": 0.3037,
"delta": -0.0527,
"percent_delta": -0.1479,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1878,
"after": 1.1839,
"delta": -0.0039,
"percent_delta": -0.0033,
"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.2986,
"after": 0.3435,
"delta": 0.0449,
"percent_delta": 0.1504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2597,
"after": 0.2045,
"delta": -0.0552,
"percent_delta": -0.2126,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.72), rates preserved: AVG=0.205 HR/AB=0.029",
"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.0301,
"after": 0.0,
"delta": -0.0301,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 2.7192,
"after": 3.0,
"delta": 0.2808,
"percent_delta": 0.1033,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5755,
"after": 1.0,
"delta": 0.4245,
"percent_delta": 0.7376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5561,
"after": 1.0,
"delta": 0.4439,
"percent_delta": 0.7982,
"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.0783,
"after": 0.0,
"delta": -0.0783,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3058,
"after": 0.0,
"delta": -0.3058,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1839,
"after": 1.0,
"delta": -0.1839,
"percent_delta": -0.1553,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5561,
"after": 1.0,
"delta": 0.4439,
"percent_delta": 0.7982,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3058,
"after": 0.0,
"delta": -0.3058,
"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.0813,
"after": 0.0,
"delta": -0.0813,
"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.0813,
"after": 0.0,
"delta": -0.0813,
"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.2045,
"after": 0.333,
"delta": 0.1285,
"percent_delta": 0.6284,
"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.3435,
"after": 0.5,
"delta": 0.1565,
"percent_delta": 0.4556,
"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.3037,
"after": 0.333,
"delta": 0.0293,
"percent_delta": 0.0965,
"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_OBP",
"before": 0.3435,
"after": 0.5,
"delta": 0.1565,
"percent_delta": 0.4556,
"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": 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": 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_CS",
"before": 0.0,
"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": 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_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.2045,
"predicted_BB": 1.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3435,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3037,
"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.2045,
"delta": -0.1285,
"percent_delta": -0.3858,
"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.5,
"after": 0.3435,
"delta": -0.1565,
"percent_delta": -0.3131,
"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.3037,
"delta": -0.0293,
"percent_delta": -0.088,
"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_OBP",
"before": 0.5,
"after": 0.3435,
"delta": -0.1565,
"percent_delta": -0.3131,
"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": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2045,
"delta": -0.0665,
"percent_delta": -0.2454,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.625,
"after": 1.0,
"delta": 0.375,
"percent_delta": 0.6,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.49,
"after": 0.0,
"delta": -0.49,
"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.299,
"after": 0.3435,
"delta": 0.0445,
"percent_delta": 0.1488,
"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.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.3037,
"delta": -0.0543,
"percent_delta": -0.1517,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.25,
"after": 0.0,
"delta": -1.25,
"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": 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": 1.25,
"after": 0.0,
"delta": -1.25,
"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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.625 | - |
| predicted_H | 0.490 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.358 | - |
| predicted_SO | 1.250 | - |
Final model 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.030 | 0.030 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 2.719 | 0.219 |
| predicted_AVG | 0.260 | -0.011 |
| predicted_BB | 0.574 | -0.051 |
| predicted_H | 0.546 | 0.056 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.077 | 0.007 |
| predicted_OBP | 0.299 | -0.000 |
| predicted_R | 0.079 | 0.079 |
| predicted_RBI | 0.297 | 0.027 |
| predicted_SLG | 0.356 | -0.002 |
| predicted_SO | 1.188 | -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.030 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 2.719 | 0.000 |
| predicted_AVG | 0.204 | -0.055 |
| predicted_BB | 0.576 | 0.002 |
| predicted_H | 0.556 | 0.010 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.078 | 0.002 |
| predicted_OBP | 0.344 | 0.045 |
| predicted_R | 0.081 | 0.002 |
| predicted_RBI | 0.306 | 0.009 |
| predicted_SLG | 0.304 | -0.053 |
| predicted_SO | 1.184 | -0.004 |
AB rounded to 3 (raw=2.72), rates preserved: AVG=0.205 HR/AB=0.029
| 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.030 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | 0.281 |
| predicted_AVG | 0.333 | 0.129 |
| predicted_BB | 1.000 | 0.424 |
| predicted_H | 1.000 | 0.444 |
| predicted_HR | 0.000 | -0.078 |
| predicted_OBP | 0.500 | 0.156 |
| predicted_R | 0.000 | -0.081 |
| predicted_RBI | 0.000 | -0.306 |
| predicted_SLG | 0.333 | 0.029 |
| predicted_SO | 1.000 | -0.184 |
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 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 1.000 | 1.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 | 2 | - | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.0000 | 0.2000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.2500 | 0.5000 |
| last_10 | 0.20 | 2 | - | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.0000 | 0.2000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.2500 | 0.5000 |
| season | 0.60 | 2 | - | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.0000 | 0.2000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.2500 | 0.5000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1510 |
| predicted_3B | 0.0120 |
| predicted_AB | 3.6000 |
| predicted_AVG | 0.2144 |
| predicted_BB | 0.3670 |
| predicted_H | 0.7720 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.1040 |
| predicted_OBP | 0.2972 |
| predicted_R | 0.3960 |
| predicted_RBI | 0.4050 |
| predicted_SLG | 0.3501 |
| predicted_SO | 0.9380 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1510 | 0.0301 | model_form_blend |
| predicted_3B | 0.0000 | 0.0120 | 0.0024 | model_form_blend |
| predicted_AB | 2.5000 | 3.6000 | 2.7192 | model_form_blend |
| predicted_AVG | 0.2710 | 0.2144 | 0.2597 | model_form_blend |
| predicted_BB | 0.6250 | 0.3670 | 0.5736 | model_form_blend |
| predicted_H | 0.4900 | 0.7720 | 0.5462 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.0700 | 0.1040 | 0.0768 | model_form_blend |
| predicted_OBP | 0.2990 | 0.2972 | 0.2986 | model_form_blend |
| predicted_R | 0.0000 | 0.3960 | 0.0789 | model_form_blend |
| predicted_RBI | 0.2700 | 0.4050 | 0.2969 | model_form_blend |
| predicted_SLG | 0.3580 | 0.3501 | 0.3564 | model_form_blend |
| predicted_SO | 1.2500 | 0.9380 | 1.1878 | 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 | 5 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.0 |
| 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 | 2 |
| 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-DH |
| gameID | 20260606_OAK@HOU |
| game_type | ph |
| mlbID | 805672 |
| note | Flied out for Alvarez, Y in the 7th. |
| playerID | 805672 |
| playerName | Collin Price |
| pos | C |
| started | False |
| startingPosition | PH |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-06 |
| sl_k_percent | 40.0 |
| sl_bb_percent | 20.0 |
| sl_woba | 0.14 |
| sl_xwoba | 0.283 |
| sl_xba | 0.099 |
| sl_xslg | 0.333 |
| sl_sweet_spot_percent | 50.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 100.0 |
| sl_exit_velocity_avg | 96.8 |
| sl_launch_angle_avg | 33.0 |
| sl_whiff_percent | 66.7 |
| 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_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 3.000 | 1.000 | 0.000 | 2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.222 | 4.000 | -0.222 | -3.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 3.667 | 6.000 | -0.667 | -3.000 |
| predicted_IP | 6.200 | 6.200 | 6.200 | Pitching_InningsPitched | 5.589 | 4.000 | 0.611 | 2.200 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 5.111 | 3.000 | 0.889 | 3.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: 6.6667 -> 6.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: 6.6667 -> 6.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 | 1 | 1 | 0 | 1 | 0 | predicted_SO: 5.0000 -> 6.0000 (boost 1.0000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "681293",
"player_name": "Spencer Arrighetti",
"position": "Starter",
"team": "HOU",
"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": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 6.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": 3.0,
"predicted_ER": 1.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 6.2,
"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": 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": 6.6667,
"after": 6.2,
"delta": -0.4667,
"percent_delta": -0.07,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 6.6667,
"after": 6.2,
"delta": -0.4667,
"percent_delta": -0.07,
"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": 1.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 6.2,
"predicted_R": 1.0,
"predicted_SO": 6.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": 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": 6.2,
"after": 6.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"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": 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": 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": 6.6667,
"after": 6.2,
"delta": -0.4667,
"percent_delta": -0.07,
"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": 6.6667,
"after": 6.2,
"delta": -0.4667,
"percent_delta": -0.07,
"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 | 3.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 6.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 | 3.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 3.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 6.200 | -0.467 |
| predicted_SO | 5.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.000 | 6.000 | 17.000 | 13.000 | 21.000 | 2.000 | 1.9286 | 1.0714 | 0.2143 | 0.6071 | 0.4643 | 0.7500 | 0.0714 |
| last_10 | 0.35 | 9 | 51.000 | 11.000 | 33.000 | 27.000 | 46.000 | 3.000 | 1.9412 | 1.1765 | 0.2157 | 0.6471 | 0.5294 | 0.9020 | 0.0588 |
| season | 0.20 | 9 | 51.000 | 11.000 | 33.000 | 27.000 | 46.000 | 3.000 | 1.9412 | 1.1765 | 0.2157 | 0.6471 | 0.5294 | 0.9020 | 0.0588 |
| Metric | Value |
|---|---|
| predicted_BB | 2.6790 |
| predicted_ER | 1.8750 |
| predicted_ERA | 2.8012 |
| predicted_H | 4.4700 |
| predicted_HR | 0.5570 |
| predicted_IP | 6.0000 |
| predicted_SO | 5.1400 |
| predicted_WHIP | 1.1868 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 2.6790 | 2.8398 | model_form_blend |
| predicted_ER | 1.0000 | 1.8750 | 1.4367 | model_form_blend |
| predicted_ERA | - | 2.8012 | 2.8012 | form_only |
| predicted_H | 3.0000 | 4.4700 | 3.7337 | model_form_blend |
| predicted_HR | 0.0000 | 0.5570 | 0.2780 | model_form_blend |
| predicted_IP | 6.2000 | 6.0000 | 6.1000 | model_form_blend |
| predicted_SO | 5.0000 | 5.1400 | 5.0699 | model_form_blend |
| predicted_WHIP | - | 1.1868 | 1.1868 | 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 | 6.2 |
| H | 3 |
| R | 1 |
| ER | 1 |
| BB | 3 |
| SO | 6 |
| HR | 0 |
| BF | 26 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 19 |
| Pitching_ER | 4 |
| Pitching_ERA | 1.94 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 7 |
| Pitching_H | 6 |
| Pitching_HBP | 1 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.0 |
| Pitching_Pitches | 83 |
| Pitching_R | 4 |
| Pitching_SO | 3 |
| Pitching_Strikes | 47 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260603_PIT@HOU |
| game_type | full |
| mlbID | 681293 |
| playerID | 681293 |
| playerName | Spencer Arrighetti |
| pos | P |
| started | True |
| startingPosition | P |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-03 |
| sl_k_percent | 21.2 |
| sl_bb_percent | 12.4 |
| sl_woba | 0.28 |
| sl_xwoba | 0.347 |
| sl_sweet_spot_percent | 38.5 |
| sl_barrel_batted_rate | 5.9 |
| sl_hard_hit_percent | 29.6 |
| sl_whiff_percent | 25.4 |
| sl_swing_percent | 42.1 |
| sl_avg_best_speed | 77.657819104 |
| sl_avg_hyper_speed | 92.506556866 |
| 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.458 | 1.000 | 0.542 | 0.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.042 | 0.000 | -1.042 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.983 | 1.000 | 0.017 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.875 | 1.000 | 1.125 | 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": "687911",
"player_name": "Bryan King",
"position": "Middle Reliever",
"team": "HOU",
"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.000 | 1.000 | 5.000 | 2.000 | 4.000 | 1.000 | 1.8000 | 1.4000 | 0.2000 | 1.0000 | 0.4000 | 0.8000 | 0.2000 |
| last_10 | 0.35 | 10 | 10.200 | 2.000 | 8.000 | 6.000 | 6.000 | 1.000 | 1.6875 | 1.3125 | 0.1875 | 0.7500 | 0.5625 | 0.5625 | 0.0938 |
| season | 0.20 | 24 | 27.100 | 8.000 | 25.000 | 11.000 | 21.000 | 1.000 | 2.6341 | 1.3171 | 0.2927 | 0.9146 | 0.4024 | 0.7683 | 0.0366 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4130 |
| predicted_ER | 0.3440 |
| predicted_ERA | 3.0989 |
| predicted_H | 0.9250 |
| predicted_HR | 0.1350 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8180 |
| predicted_WHIP | 1.3380 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.4130 | 0.7377 | model_form_blend |
| predicted_ER | 0.0000 | 0.3440 | 0.1537 | model_form_blend |
| predicted_ERA | - | 3.0989 | 3.0989 | form_only |
| predicted_H | 0.0000 | 0.9250 | 0.4133 | model_form_blend |
| predicted_HR | 0.0000 | 0.1350 | 0.0603 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.8180 | 1.4719 | model_form_blend |
| predicted_WHIP | - | 1.3380 | 1.3380 | 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 | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 2 |
| HR | 0 |
| BF | 4 |
| 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 | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.63 |
| 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 | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260605_OAK@HOU |
| game_type | full |
| mlbID | 687911 |
| playerID | 687911 |
| playerName | Bryan King |
| pos | P |
| started | False |
| startingPosition | P |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-05 |
| sl_k_percent | 17.8 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.296 |
| sl_xwoba | 0.294 |
| sl_sweet_spot_percent | 28.9 |
| sl_barrel_batted_rate | 2.4 |
| sl_hard_hit_percent | 37.3 |
| sl_whiff_percent | 18.0 |
| sl_swing_percent | 48.7 |
| sl_avg_best_speed | 76.463963415 |
| sl_avg_hyper_speed | 93.182007805 |
| 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 | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.360 | 0.000 | 0.640 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.800 | 0.000 | 0.200 | 1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.912 | 1.200 | 0.188 | -0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.080 | 2.000 | -0.080 | -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": "660853",
"player_name": "Enyel De Los Santos",
"position": "Middle Reliever",
"team": "HOU",
"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": 1.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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 1.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": 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": 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": 1.0,
"after": 1.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": 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 | 1.000 | - |
| predicted_ER | 1.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 | 6.000 | 0.000 | 1.000 | 1.000 | 9.000 | 0.000 | 0.0000 | 0.3333 | 0.0000 | 0.1667 | 0.1667 | 1.5000 | 0.0000 |
| last_10 | 0.35 | 10 | 11.000 | 1.000 | 5.000 | 1.000 | 13.000 | 0.000 | 0.8182 | 0.5455 | 0.0909 | 0.4546 | 0.0909 | 1.1818 | 0.0000 |
| season | 0.20 | 25 | 27.000 | 9.000 | 20.000 | 5.000 | 27.000 | 1.000 | 3.0000 | 0.9259 | 0.3333 | 0.7407 | 0.1852 | 1.0000 | 0.0370 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2700 |
| predicted_ER | 0.3080 |
| predicted_ERA | 2.5693 |
| predicted_H | 0.7120 |
| predicted_HR | 0.0770 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2040 |
| predicted_WHIP | 0.9113 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2700 | 0.6748 | model_form_blend |
| predicted_ER | 1.0000 | 0.3080 | 0.6917 | model_form_blend |
| predicted_ERA | - | 2.5693 | 2.5693 | form_only |
| predicted_H | 1.0000 | 0.7120 | 0.8717 | model_form_blend |
| predicted_HR | 0.0000 | 0.0770 | 0.0343 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.2040 | 1.0909 | model_form_blend |
| predicted_WHIP | - | 0.9113 | 0.9113 | 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.1 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 6 |
| Pitches | 12 |
| 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.00 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 17 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260605_OAK@HOU |
| game_type | full |
| mlbID | 660853 |
| playerID | 660853 |
| playerName | Enyel De Los Santos |
| pos | P |
| started | False |
| startingPosition | P |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-05 |
| sl_k_percent | 25.2 |
| sl_bb_percent | 4.7 |
| sl_woba | 0.235 |
| sl_xwoba | 0.255 |
| sl_sweet_spot_percent | 36.0 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 37.3 |
| sl_whiff_percent | 29.2 |
| sl_swing_percent | 54.4 |
| sl_avg_best_speed | 78.68492 |
| sl_avg_hyper_speed | 93.748403378 |
| 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 | 0.000 | -0.500 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 1.000 | 1.000 | -1.000 | -1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 2.000 | 3.000 | -2.000 | -3.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: 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 | 2 | 0 | 2 | 0 | 2 | - | 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": "623352",
"player_name": "Josh Hader",
"position": "Middle Reliever",
"team": "HOU",
"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": 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": 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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"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": 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 | 0.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 | 2.000 | 0.000 | 0.000 | 1.000 | 4.000 | 0.000 | 0.0000 | 0.5000 | 0.0000 | 0.0000 | 0.5000 | 2.0000 | 0.0000 |
| last_10 | 0.35 | 2 | 2.000 | 0.000 | 0.000 | 1.000 | 4.000 | 0.000 | 0.0000 | 0.5000 | 0.0000 | 0.0000 | 0.5000 | 2.0000 | 0.0000 |
| season | 0.20 | 2 | 2.000 | 0.000 | 0.000 | 1.000 | 4.000 | 0.000 | 0.0000 | 0.5000 | 0.0000 | 0.0000 | 0.5000 | 2.0000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1430 |
| predicted_ER | 0.1720 |
| predicted_ERA | 4.0440 |
| predicted_H | 0.3390 |
| predicted_HR | 0.0490 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.3870 |
| predicted_WHIP | 1.2618 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1430 | 0.0370 | model_form_blend |
| predicted_ER | 0.0000 | 0.1720 | 0.0444 | model_form_blend |
| predicted_ERA | - | 4.0440 | 4.0440 | form_only |
| predicted_H | 0.0000 | 0.3390 | 0.0876 | model_form_blend |
| predicted_HR | 0.0000 | 0.0490 | 0.0127 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.3870 | 0.8416 | model_form_blend |
| predicted_WHIP | - | 1.2618 | 1.2618 | 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 | 0.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 0 |
| 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 | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.00 |
| 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 | 18 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260605_OAK@HOU |
| game_type | full |
| mlbID | 623352 |
| playerID | 623352 |
| playerName | Josh Hader |
| pos | P |
| started | False |
| startingPosition | P |
| team | HOU |
| teamID | 11 |
| game_date | 2026-06-05 |
| sl_k_percent | 57.1 |
| sl_bb_percent | 14.3 |
| sl_woba | 0.1 |
| sl_xwoba | 0.117 |
| sl_sweet_spot_percent | 0.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 0.0 |
| sl_whiff_percent | 44.4 |
| sl_swing_percent | 51.4 |
| sl_avg_best_speed | 61.46626 |
| sl_avg_hyper_speed | 88.0 |
| Field | Value |
|---|---|
| Pitcher | Grayson Rodriguez |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.5318 |
| ESPN Rank | 659 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0054 |
| Avg Velo | 89.8074 |
| Avg Spin | 2272.6328 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 4.1000 |
| Pre ER | 5 |
| Pre H | 10 |
| Pre BB | 3 |
| Pre SO | 2 |
| Season ERA | 9.5000 |
| Season WHIP | 1.8889 |
| Role Avg IP | 4.5000 |
| Recent Avg IP | 4.5000 |
| Last Start IP | 3.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"opponent": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"edges": {
"quality_edge": -0.0964,
"offense_edge": -0.003,
"opponent_offense_edge": 0.0092,
"defense_strength": -0.1307,
"opponent_defense_weakness": 0.0875,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0194,
"strikeout": 0.9964
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "680570",
"profile": {
"available": true,
"pitcher_id": "680570",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 55.0,
"k_percent": 19.8,
"bb_percent": 12.8,
"woba": 0.406,
"xwoba": 0.402,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 50.0,
"avg_best_speed": 81.1675,
"avg_hyper_speed": 95.1168,
"whiff_percent": 21.9,
"swing_percent": 45.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.8625,
"command_and_miss": -0.5793,
"regression_edge": 0.1143,
"xwoba_edge": -2.5,
"barrel_edge": -0.7111,
"hard_hit_edge": -1.6286,
"whiff_edge": -0.5571,
"bb_edge": -0.925,
"pitch_design_score": 0.0054
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680570",
"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": 89.80741657077101,
"release_spin_rate": 2272.6327867280397,
"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": 89.80741657077101,
"release_spin_rate": 2272.6327867280397,
"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.8074,
"release_spin_rate": 2272.6328,
"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.0054,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0389,
"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.5318,
"sample_weight": 0.45,
"run_prevention_factor": 1.0452,
"strikeout_factor": 0.982,
"walk_factor": 1.0333,
"homer_factor": 1.0887,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680570",
"espn_id": 41196,
"player_name": "Grayson Rodriguez",
"team": "LAA",
"role": "pitcher",
"espn_rank": 659,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 659,
"gp_value": 4.0,
"gp_rank": 490,
"gs_value": 4.0,
"gs_rank": 166,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 9.5,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 18.0,
"ip_rank": 378,
"h_value": 23.0,
"h_rank": 252,
"er_value": 19.0,
"er_rank": 138,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 11.0,
"bb_rank": 236,
"k_value": 17.0,
"k_rank": 352,
"k_per_9_value": 8.5,
"k_per_9_rank": 25,
"whip_value": 1.8888,
"whip_rank": null,
"war_value": -0.67,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 5.0,
"factor": 1.0203,
"adjusted": 5
},
"predicted_H": {
"original": 6.0,
"factor": 1.0203,
"adjusted": 6
},
"predicted_BB": {
"original": 3.0,
"factor": 1.015,
"adjusted": 3
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0399,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9919,
"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": "insufficient_data"
},
"pitching": {
"IP": 18.0,
"ER": 19,
"H": 23,
"BB": 11,
"SO": 17,
"HR": 4,
"ERA": 9.5,
"WHIP": 1.8888888888888888,
"K9": 8.5,
"HR9": 2.0,
"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-06-02T00:00:00"
}{
"available": true,
"pitcher_id": "680570",
"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": 89.80741657077101,
"release_spin_rate": 2272.6327867280397,
"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": 89.80741657077101,
"release_spin_rate": 2272.6327867280397,
"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.8074,
"release_spin_rate": 2272.6328,
"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.0054,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0389,
"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": "680570",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 4,
"reference_playing_time": 4.667,
"windows": {
"last_5": {
"games": 4,
"totals": {
"IP": 18.0,
"ER": 19.0,
"R": 20.0,
"H": 23.0,
"BB": 11.0,
"SO": 17.0,
"HR": 4.0,
"BF": 86.0,
"Pitches": 355.0
},
"per_game": {
"IP": 4.2,
"ER": 4.75,
"R": 5.0,
"H": 5.75,
"BB": 2.75,
"SO": 4.25,
"HR": 1.0,
"BF": 21.5,
"Pitches": 88.75
},
"rates": {
"ERA": 9.5,
"WHIP": 1.8889,
"ER_per_IP": 1.05556,
"H_per_IP": 1.27778,
"BB_per_IP": 0.61111,
"SO_per_IP": 0.94444,
"HR_per_IP": 0.22222
}
},
"last_10": {
"games": 4,
"totals": {
"IP": 18.0,
"ER": 19.0,
"R": 20.0,
"H": 23.0,
"BB": 11.0,
"SO": 17.0,
"HR": 4.0,
"BF": 86.0,
"Pitches": 355.0
},
"per_game": {
"IP": 4.2,
"ER": 4.75,
"R": 5.0,
"H": 5.75,
"BB": 2.75,
"SO": 4.25,
"HR": 1.0,
"BF": 21.5,
"Pitches": 88.75
},
"rates": {
"ERA": 9.5,
"WHIP": 1.8889,
"ER_per_IP": 1.05556,
"H_per_IP": 1.27778,
"BB_per_IP": 0.61111,
"SO_per_IP": 0.94444,
"HR_per_IP": 0.22222
}
},
"season": {
"games": 4,
"totals": {
"IP": 18.0,
"ER": 19.0,
"R": 20.0,
"H": 23.0,
"BB": 11.0,
"SO": 17.0,
"HR": 4.0,
"BF": 86.0,
"Pitches": 355.0
},
"per_game": {
"IP": 4.2,
"ER": 4.75,
"R": 5.0,
"H": 5.75,
"BB": 2.75,
"SO": 4.25,
"HR": 1.0,
"BF": 21.5,
"Pitches": 88.75
},
"rates": {
"ERA": 9.5,
"WHIP": 1.8889,
"ER_per_IP": 1.05556,
"H_per_IP": 1.27778,
"BB_per_IP": 0.61111,
"SO_per_IP": 0.94444,
"HR_per_IP": 0.22222
}
}
},
"weighted_prediction": {
"predicted_IP": 4.2,
"predicted_ER": 3.446,
"predicted_H": 5.133,
"predicted_BB": 2.212,
"predicted_SO": 4.381,
"predicted_HR": 0.822,
"predicted_ERA": 6.6461,
"predicted_WHIP": 1.5739
}
}{
"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": 4.2,
"form": 4.2,
"final": 4.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 5.0,
"form": 3.446,
"final": 4.3547,
"source": "model_form_blend"
},
"predicted_H": {
"model": 10.0,
"form": 5.133,
"final": 7.9789,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 2.212,
"final": 2.6728,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 4.381,
"final": 2.9887,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.822,
"final": 0.3413,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.6461,
"final": 6.6461,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5739,
"final": 1.5739,
"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.1000 |
| ESPN Rank | 94 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0872 |
| Avg Velo | 91.2666 |
| Avg Spin | 1886.6840 |
| 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 | 1.5882 |
| Season WHIP | 1.4118 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"opponent": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"edges": {
"quality_edge": -0.0964,
"offense_edge": -0.003,
"opponent_offense_edge": 0.0092,
"defense_strength": -0.1307,
"opponent_defense_weakness": 0.0875,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0194,
"strikeout": 0.9964
},
"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": 23.2,
"bb_percent": 15.2,
"woba": 0.301,
"xwoba": 0.3,
"sweet_spot_percent": 36.7,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 28.3,
"avg_best_speed": 75.1108,
"avg_hyper_speed": 92.7587,
"whiff_percent": 32.8,
"swing_percent": 46.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3496,
"command_and_miss": 0.0643,
"regression_edge": 0.0286,
"xwoba_edge": 0.4143,
"barrel_edge": -0.2667,
"hard_hit_edge": 1.4714,
"whiff_edge": 1.0,
"bb_edge": -1.525,
"pitch_design_score": 0.0872
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "681217",
"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": 91.26658987635973,
"release_spin_rate": 1886.683999336193,
"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": 91.26658987635973,
"release_spin_rate": 1886.683999336193,
"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.2666,
"release_spin_rate": 1886.684,
"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.0872,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6226,
"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.1,
"sample_weight": 0.45,
"run_prevention_factor": 0.9915,
"strikeout_factor": 1.0188,
"walk_factor": 1.0549,
"homer_factor": 0.9775,
"woba_minus_xwoba": 0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681217",
"espn_id": 4413990,
"player_name": "Chase Silseth",
"team": "LAA",
"role": "pitcher",
"espn_rank": 94,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 94,
"gp_value": 28.0,
"gp_rank": 39,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.5882,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 22.2,
"ip_rank": 317,
"h_value": 17.0,
"h_rank": 341,
"er_value": 4.0,
"er_rank": 497,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 23.0,
"k_rank": 286,
"k_per_9_value": 9.132353,
"k_per_9_rank": 24,
"whip_value": 1.4117,
"whip_rank": null,
"war_value": 0.98,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9962,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9962,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0247,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9899,
"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": 8.1,
"ER": 0,
"H": 5,
"BB": 3,
"SO": 9,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.96,
"K9": 9.719999999999999,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "681217",
"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": 91.26658987635973,
"release_spin_rate": 1886.683999336193,
"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": 91.26658987635973,
"release_spin_rate": 1886.683999336193,
"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.2666,
"release_spin_rate": 1886.684,
"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.0872,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6226,
"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.476,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4723,
"prior_weight": 0.5277
},
"role": "pitcher",
"player_id": "681217",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 2.0,
"SO": 6.0,
"HR": 0.0,
"BF": 21.0,
"Pitches": 96.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.4,
"SO": 1.2,
"HR": 0.0,
"BF": 4.2,
"Pitches": 19.2
},
"rates": {
"ERA": 0.0,
"WHIP": 0.9375,
"ER_per_IP": 0.0,
"H_per_IP": 0.5625,
"BB_per_IP": 0.375,
"SO_per_IP": 1.125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 0.0,
"R": 1.0,
"H": 5.0,
"BB": 3.0,
"SO": 9.0,
"HR": 0.0,
"BF": 33.0,
"Pitches": 139.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.1,
"H": 0.5,
"BB": 0.3,
"SO": 0.9,
"HR": 0.0,
"BF": 3.3,
"Pitches": 13.9
},
"rates": {
"ERA": 0.0,
"WHIP": 0.96,
"ER_per_IP": 0.0,
"H_per_IP": 0.6,
"BB_per_IP": 0.36,
"SO_per_IP": 1.08,
"HR_per_IP": 0.0
}
},
"season": {
"games": 28,
"totals": {
"IP": 22.2,
"ER": 4.0,
"R": 5.0,
"H": 17.0,
"BB": 15.0,
"SO": 23.0,
"HR": 1.0,
"BF": 99.0,
"Pitches": 409.0
},
"per_game": {
"IP": 0.2,
"ER": 0.1429,
"R": 0.1786,
"H": 0.6071,
"BB": 0.5357,
"SO": 0.8214,
"HR": 0.0357,
"BF": 3.5357,
"Pitches": 14.6071
},
"rates": {
"ERA": 1.5882,
"WHIP": 1.4118,
"ER_per_IP": 0.17647,
"H_per_IP": 0.75,
"BB_per_IP": 0.66176,
"SO_per_IP": 1.01471,
"HR_per_IP": 0.04412
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.249,
"predicted_H": 0.726,
"predicted_BB": 0.36,
"predicted_SO": 0.919,
"predicted_HR": 0.071,
"predicted_ERA": 2.4526,
"predicted_WHIP": 1.1889
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.573,
"form_weight": 0.427,
"form_reliability": 0.4723,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.476,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4723,
"prior_weight": 0.5277
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.249,
"final": 0.1063,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.726,
"final": 0.31,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.36,
"final": 0.1537,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.919,
"final": 0.3925,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.071,
"final": 0.0303,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.4526,
"final": 2.4526,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1889,
"final": 1.1889,
"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 | Drew Pomeranz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1766 |
| ESPN Rank | 498 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0187 |
| Avg Velo | 90.0450 |
| Avg Spin | 2491.6009 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 5.3115 |
| Season WHIP | 1.7213 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"opponent": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"edges": {
"quality_edge": -0.0964,
"offense_edge": -0.003,
"opponent_offense_edge": 0.0092,
"defense_strength": -0.1307,
"opponent_defense_weakness": 0.0875,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0194,
"strikeout": 0.9964
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "519141",
"profile": {
"available": true,
"pitcher_id": "519141",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 70.0,
"k_percent": 16.5,
"bb_percent": 12.4,
"woba": 0.368,
"xwoba": 0.34,
"sweet_spot_percent": 32.8,
"barrel_batted_rate": 7.5,
"hard_hit_percent": 35.8,
"avg_best_speed": 77.2367,
"avg_hyper_speed": 93.7885,
"whiff_percent": 23.1,
"swing_percent": 49.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.516,
"command_and_miss": -0.7114,
"regression_edge": 0.8,
"xwoba_edge": -0.7286,
"barrel_edge": -0.0889,
"hard_hit_edge": 0.4,
"whiff_edge": -0.3857,
"bb_edge": -0.825,
"pitch_design_score": 0.0187
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "519141",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 90.04497647490682,
"release_spin_rate": 2491.600903030005,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 90.04497647490682,
"release_spin_rate": 2491.600903030005,
"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.045,
"release_spin_rate": 2491.6009,
"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.0187,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1339,
"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.1766,
"sample_weight": 0.45,
"run_prevention_factor": 1.015,
"strikeout_factor": 0.9766,
"walk_factor": 1.0297,
"homer_factor": 1.0058,
"woba_minus_xwoba": 0.028,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "519141",
"espn_id": 31010,
"player_name": "Drew Pomeranz",
"team": "LAA",
"role": "pitcher",
"espn_rank": 498,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 498,
"gp_value": 23.0,
"gp_rank": 121,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.3114,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 20.1,
"ip_rank": 345,
"h_value": 23.0,
"h_rank": 252,
"er_value": 12.0,
"er_rank": 234,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 12.0,
"bb_rank": 219,
"k_value": 16.0,
"k_rank": 368,
"k_per_9_value": 7.0819674,
"k_per_9_rank": 28,
"whip_value": 1.7213,
"whip_rank": null,
"war_value": -0.15,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0068,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0068,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0134,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0026,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9895,
"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": 0,
"H": 8,
"BB": 5,
"SO": 7,
"HR": 0,
"ERA": 0.0,
"WHIP": 1.5,
"K9": 7.26923076923077,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "519141",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 90.04497647490682,
"release_spin_rate": 2491.600903030005,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 90.04497647490682,
"release_spin_rate": 2491.600903030005,
"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.045,
"release_spin_rate": 2491.6009,
"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.0187,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1339,
"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.015,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4454,
"prior_weight": 0.5546
},
"role": "pitcher",
"player_id": "519141",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 23,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 0.0,
"R": 0.0,
"H": 5.0,
"BB": 4.0,
"SO": 3.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 92.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 0.8,
"SO": 0.6,
"HR": 0.0,
"BF": 4.4,
"Pitches": 18.4
},
"rates": {
"ERA": 0.0,
"WHIP": 2.0769,
"ER_per_IP": 0.0,
"H_per_IP": 1.15385,
"BB_per_IP": 0.92308,
"SO_per_IP": 0.69231,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 0.0,
"R": 1.0,
"H": 8.0,
"BB": 5.0,
"SO": 7.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 161.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.1,
"H": 0.8,
"BB": 0.5,
"SO": 0.7,
"HR": 0.0,
"BF": 4.0,
"Pitches": 16.1
},
"rates": {
"ERA": 0.0,
"WHIP": 1.5,
"ER_per_IP": 0.0,
"H_per_IP": 0.92308,
"BB_per_IP": 0.57692,
"SO_per_IP": 0.80769,
"HR_per_IP": 0.0
}
},
"season": {
"games": 23,
"totals": {
"IP": 20.1,
"ER": 12.0,
"R": 13.0,
"H": 23.0,
"BB": 12.0,
"SO": 16.0,
"HR": 4.0,
"BF": 97.0,
"Pitches": 344.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5217,
"R": 0.5652,
"H": 1.0,
"BB": 0.5217,
"SO": 0.6957,
"HR": 0.1739,
"BF": 4.2174,
"Pitches": 14.9565
},
"rates": {
"ERA": 5.3115,
"WHIP": 1.7213,
"ER_per_IP": 0.59016,
"H_per_IP": 1.13115,
"BB_per_IP": 0.59016,
"SO_per_IP": 0.78689,
"HR_per_IP": 0.19672
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.321,
"predicted_H": 1.007,
"predicted_BB": 0.53,
"predicted_SO": 0.853,
"predicted_HR": 0.095,
"predicted_ERA": 2.8931,
"predicted_WHIP": 1.5366
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5843,
"form_weight": 0.4157,
"form_reliability": 0.4454,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.015,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4454,
"prior_weight": 0.5546
},
"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.1334,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.007,
"final": 1.0029,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.53,
"final": 0.8046,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.853,
"final": 0.9389,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.095,
"final": 0.0395,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.8931,
"final": 2.8931,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5366,
"final": 1.5366,
"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.2140 |
| ESPN Rank | 385 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1132 |
| Avg Velo | 87.6889 |
| Avg Spin | 1943.3595 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 3.8571 |
| Season WHIP | 1.1786 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"opponent": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"edges": {
"quality_edge": -0.0964,
"offense_edge": -0.003,
"opponent_offense_edge": 0.0092,
"defense_strength": -0.1307,
"opponent_defense_weakness": 0.0875,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0194,
"strikeout": 0.9964
},
"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": 28.6,
"bb_percent": 9.5,
"woba": 0.338,
"xwoba": 0.329,
"sweet_spot_percent": 40.0,
"barrel_batted_rate": 12.0,
"hard_hit_percent": 64.0,
"avg_best_speed": 87.1956,
"avg_hyper_speed": 97.9409,
"whiff_percent": 24.7,
"swing_percent": 48.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.0141,
"command_and_miss": 0.2914,
"regression_edge": 0.2571,
"xwoba_edge": -0.4143,
"barrel_edge": -1.0889,
"hard_hit_edge": -2.5,
"whiff_edge": -0.1571,
"bb_edge": -0.1,
"pitch_design_score": -0.1132
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "489446",
"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": 87.6889332096475,
"release_spin_rate": 1943.3594851576995,
"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": 87.6889332096475,
"release_spin_rate": 1943.3594851576995,
"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.6889,
"release_spin_rate": 1943.3595,
"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.1132,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.8085,
"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.214,
"sample_weight": 0.45,
"run_prevention_factor": 1.0182,
"strikeout_factor": 1.0118,
"walk_factor": 1.0036,
"homer_factor": 1.0898,
"woba_minus_xwoba": 0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "489446",
"espn_id": 32623,
"player_name": "Kirby Yates",
"team": "LAA",
"role": "pitcher",
"espn_rank": 385,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 385,
"gp_value": 11.0,
"gp_rank": 347,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.8214,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 9.1,
"ip_rank": 471,
"h_value": 8.0,
"h_rank": 490,
"er_value": 5.0,
"er_rank": 459,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 4.0,
"bb_rank": 477,
"k_value": 12.0,
"k_rank": 428,
"k_per_9_value": 11.571429,
"k_per_9_rank": 24,
"whip_value": 1.2857,
"whip_rank": null,
"war_value": 0.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0082,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0082,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0016,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0404,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0053,
"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": 6,
"BB": 4,
"SO": 11,
"HR": 1,
"ERA": 4.32,
"WHIP": 1.2000000000000002,
"K9": 11.880000000000003,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "489446",
"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": 87.6889332096475,
"release_spin_rate": 1943.3594851576995,
"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": 87.6889332096475,
"release_spin_rate": 1943.3594851576995,
"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.6889,
"release_spin_rate": 1943.3595,
"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.1132,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.8085,
"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.5625,
"last_10": 0.43749999999999994
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.843,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2693,
"prior_weight": 0.7307
},
"role": "pitcher",
"player_id": "489446",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 10,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 21.0,
"Pitches": 75.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 4.2,
"Pitches": 15.0
},
"rates": {
"ERA": 1.8,
"WHIP": 1.0,
"ER_per_IP": 0.2,
"H_per_IP": 0.6,
"BB_per_IP": 0.4,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 4.0,
"SO": 12.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 162.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.7,
"BB": 0.4,
"SO": 1.2,
"HR": 0.1,
"BF": 4.1,
"Pitches": 16.2
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.1786,
"ER_per_IP": 0.42857,
"H_per_IP": 0.75,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 4.0,
"SO": 12.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 162.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.7,
"BB": 0.4,
"SO": 1.2,
"HR": 0.1,
"BF": 4.1,
"Pitches": 16.2
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.1786,
"ER_per_IP": 0.42857,
"H_per_IP": 0.75,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.10714
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.435,
"predicted_H": 0.879,
"predicted_BB": 0.377,
"predicted_SO": 0.986,
"predicted_HR": 0.114,
"predicted_ERA": 3.9154,
"predicted_WHIP": 1.2563
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6587,
"form_weight": 0.3413,
"form_reliability": 0.2693,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.843,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2693,
"prior_weight": 0.7307
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.435,
"final": 0.1485,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.879,
"final": 0.9587,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.377,
"final": 0.7874,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.986,
"final": 0.3365,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.114,
"final": 0.0389,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9154,
"final": 3.9154,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2563,
"final": 1.2563,
"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.3722 |
| ESPN Rank | 55 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1453 |
| Avg Velo | 92.3048 |
| Avg Spin | 2470.9152 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 2.1236 |
| Season WHIP | 1.0449 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 73,
"wins": 30,
"losses": 43,
"win_pct": 0.411,
"runs_scored": 325.0,
"runs_allowed": 375.0,
"run_differential": -50.0,
"run_differential_per_game": -0.6849,
"avg_runs_scored": 4.4521,
"avg_runs_allowed": 5.137,
"offense_index": 0.997,
"defense_index": 0.8693,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 6.4,
"avg_runs_allowed": 5.3,
"run_differential": 11.0
},
"available": true,
"quality_score": -0.195
},
"opponent": {
"team": "HOU",
"games": 75,
"wins": 33,
"losses": 42,
"win_pct": 0.44,
"runs_scored": 338.0,
"runs_allowed": 367.0,
"run_differential": -29.0,
"run_differential_per_game": -0.3867,
"avg_runs_scored": 4.5067,
"avg_runs_allowed": 4.8933,
"offense_index": 1.0092,
"defense_index": 0.9125,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.4,
"avg_runs_allowed": 4.2,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0986
},
"edges": {
"quality_edge": -0.0964,
"offense_edge": -0.003,
"opponent_offense_edge": 0.0092,
"defense_strength": -0.1307,
"opponent_defense_weakness": 0.0875,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0194,
"strikeout": 0.9964
},
"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": 26.9,
"bb_percent": 11.8,
"woba": 0.255,
"xwoba": 0.26,
"sweet_spot_percent": 28.2,
"barrel_batted_rate": 4.3,
"hard_hit_percent": 31.0,
"avg_best_speed": 75.5668,
"avg_hyper_speed": 92.7833,
"whiff_percent": 35.3,
"swing_percent": 44.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.2046,
"command_and_miss": 0.5971,
"regression_edge": -0.1429,
"xwoba_edge": 1.5571,
"barrel_edge": 0.6222,
"hard_hit_edge": 1.0857,
"whiff_edge": 1.3571,
"bb_edge": -0.675,
"pitch_design_score": 0.1453
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "696147",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 92.3047653543398,
"release_spin_rate": 2470.9151531639345,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 92.3047653543398,
"release_spin_rate": 2470.9151531639345,
"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.3048,
"release_spin_rate": 2470.9152,
"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.1453,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.0378,
"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.3722,
"sample_weight": 0.45,
"run_prevention_factor": 0.9684,
"strikeout_factor": 1.0347,
"walk_factor": 1.0243,
"homer_factor": 0.937,
"woba_minus_xwoba": -0.005,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "696147",
"espn_id": 4621489,
"player_name": "Sam Bachman",
"team": "LAA",
"role": "pitcher",
"espn_rank": 55,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 55,
"gp_value": 23.0,
"gp_rank": 121,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.1235,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 10.0,
"hld_rank": 16,
"ip_value": 29.2,
"ip_rank": 206,
"h_value": 17.0,
"h_rank": 341,
"er_value": 7.0,
"er_rank": 383,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 14.0,
"bb_rank": 182,
"k_value": 32.0,
"k_rank": 190,
"k_per_9_value": 9.707865,
"k_per_9_rank": 24,
"whip_value": 1.0449,
"whip_rank": null,
"war_value": 1.27,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9858,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9858,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0109,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9717,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0156,
"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.0,
"ER": 0,
"H": 6,
"BB": 4,
"SO": 11,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.9090909090909091,
"K9": 9.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-07T00:00:00"
}{
"available": true,
"pitcher_id": "696147",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 92.3047653543398,
"release_spin_rate": 2470.9151531639345,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 92.3047653543398,
"release_spin_rate": 2470.9151531639345,
"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.3048,
"release_spin_rate": 2470.9152,
"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.1453,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.0378,
"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.858,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5395,
"prior_weight": 0.4605
},
"role": "pitcher",
"player_id": "696147",
"report_date": "20260608_H",
"season_year": 2026,
"rows_used": 23,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 4.0,
"SO": 7.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 94.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.8,
"SO": 1.4,
"HR": 0.0,
"BF": 4.4,
"Pitches": 18.8
},
"rates": {
"ERA": 0.0,
"WHIP": 1.5,
"ER_per_IP": 0.0,
"H_per_IP": 0.64286,
"BB_per_IP": 0.85714,
"SO_per_IP": 1.5,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.0,
"ER": 0.0,
"R": 0.0,
"H": 6.0,
"BB": 4.0,
"SO": 11.0,
"HR": 0.0,
"BF": 44.0,
"Pitches": 168.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.4,
"SO": 1.1,
"HR": 0.0,
"BF": 4.4,
"Pitches": 16.8
},
"rates": {
"ERA": 0.0,
"WHIP": 0.9091,
"ER_per_IP": 0.0,
"H_per_IP": 0.54545,
"BB_per_IP": 0.36364,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 23,
"totals": {
"IP": 29.2,
"ER": 7.0,
"R": 7.0,
"H": 17.0,
"BB": 14.0,
"SO": 32.0,
"HR": 2.0,
"BF": 119.0,
"Pitches": 455.0
},
"per_game": {
"IP": 1.1,
"ER": 0.3043,
"R": 0.3043,
"H": 0.7391,
"BB": 0.6087,
"SO": 1.3913,
"HR": 0.087,
"BF": 5.1739,
"Pitches": 19.7826
},
"rates": {
"ERA": 2.1236,
"WHIP": 1.0449,
"ER_per_IP": 0.23596,
"H_per_IP": 0.57303,
"BB_per_IP": 0.47191,
"SO_per_IP": 1.07865,
"HR_per_IP": 0.06742
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.258,
"predicted_H": 0.789,
"predicted_BB": 0.513,
"predicted_SO": 1.139,
"predicted_HR": 0.074,
"predicted_ERA": 2.2385,
"predicted_WHIP": 1.2573
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5446,
"form_weight": 0.4554,
"form_reliability": 0.5395,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.858,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5395,
"prior_weight": 0.4605
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.258,
"final": 0.1175,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.789,
"final": 0.9039,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.513,
"final": 0.2336,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.139,
"final": 1.6079,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.074,
"final": 0.0337,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.2385,
"final": 2.2385,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2573,
"final": 1.2573,
"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.143 | 1.000 | -0.143 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.490 | 2.000 | 4.000 | Hitting_AB | 3.286 | 4.000 | -1.286 | -2.000 |
| predicted_AVG | 0.271 | 0.500 | 0.250 | Hitting_AVG | 0.326 | 0.250 | 0.174 | 0.250 |
| predicted_BB | 0.259 | 2.000 | 0.000 | Hitting_BB | 0.250 | 1.000 | 1.750 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.950 | 1.000 | 1.000 | Hitting_H | 1.071 | 1.000 | -0.071 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.179 | 0.000 | -0.179 | 0.000 |
| predicted_OBP | 0.351 | 0.750 | 0.250 | Hitting_OBP | 0.374 | 0.400 | 0.376 | 0.350 |
| predicted_R | 0.370 | 1.000 | 0.000 | Hitting_R | 0.357 | 1.000 | 0.643 | 0.000 |
| predicted_RBI | 0.530 | 1.000 | 1.000 | Hitting_RBI | 0.679 | 0.000 | 0.321 | 1.000 |
| predicted_SLG | 0.464 | 0.500 | 0.250 | Hitting_SLG | 0.533 | 0.500 | -0.033 | 0.000 |
| predicted_SO | 0.593 | 0.000 | 1.000 | Hitting_SO | 0.571 | 0.000 | -0.571 | 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_BB: 0.2590 -> 2.0000 (boost 1.7410, better) |
| Biggest Deboost | predicted_AB: 3.4900 -> 2.0000 (deboost -1.4900, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.4900 -> 4.1370 (boost 0.6470, 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 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2884 -> 0.2934 (boost 0.0050, better) | predicted_SLG: 0.4816 -> 0.4625 (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 | 7 | 2 | 5 | 1 | 6 | predicted_RBI: 0.6634 -> 1.0000 (boost 0.3366, better) | predicted_BB: 0.3374 -> 0.0000 (deboost -0.3374, worse) | AB rounded to 4 (raw=4.14), rates preserved: AVG=0.293 HR/AB=0.036 |
| 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 | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4625 -> 0.2500 (deboost -0.2125, 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_BB: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_AB: 4.0000 -> 2.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4625 (boost 0.2125, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "685133",
"player_name": "Wade Meckler",
"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.148,
"predicted_3B": 0.0,
"predicted_AB": 3.49,
"predicted_AVG": 0.271,
"predicted_BB": 0.259,
"predicted_H": 0.95,
"predicted_HR": 0.12,
"predicted_OBP": 0.351,
"predicted_R": 0.37,
"predicted_RBI": 0.53,
"predicted_SLG": 0.464,
"predicted_SO": 0.593
},
"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.2492,
"predicted_3B": 0.0019,
"predicted_AB": 4.137,
"predicted_AVG": 0.2884,
"predicted_BB": 0.3384,
"predicted_H": 1.2139,
"predicted_HBP": 0.011,
"predicted_HR": 0.1483,
"predicted_OBP": 0.3596,
"predicted_R": 0.4987,
"predicted_RBI": 0.6652,
"predicted_SLG": 0.4816,
"predicted_SO": 0.7614
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.148,
"after": 0.2492,
"delta": 0.1012,
"percent_delta": 0.6838,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.49,
"after": 4.137,
"delta": 0.647,
"percent_delta": 0.1854,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2884,
"delta": 0.0174,
"percent_delta": 0.0642,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.259,
"after": 0.3384,
"delta": 0.0794,
"percent_delta": 0.3066,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 1.2139,
"delta": 0.2639,
"percent_delta": 0.2778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1483,
"delta": 0.0283,
"percent_delta": 0.2358,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3596,
"delta": 0.0086,
"percent_delta": 0.0245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.37,
"after": 0.4987,
"delta": 0.1287,
"percent_delta": 0.3478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.6652,
"delta": 0.1352,
"percent_delta": 0.2551,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.464,
"after": 0.4816,
"delta": 0.0176,
"percent_delta": 0.0379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.593,
"after": 0.7614,
"delta": 0.1684,
"percent_delta": 0.284,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.49,
"after": 4.137,
"delta": 0.647,
"percent_delta": 0.1854,
"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": 9,
"season": 14
}
},
{
"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.2492,
"predicted_3B": 0.0019,
"predicted_AB": 4.137,
"predicted_AVG": 0.2934,
"predicted_BB": 0.3374,
"predicted_H": 1.2137,
"predicted_HBP": 0.011,
"predicted_HR": 0.1488,
"predicted_OBP": 0.3466,
"predicted_R": 0.4974,
"predicted_RBI": 0.6634,
"predicted_SLG": 0.4625,
"predicted_SO": 0.7637
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2492,
"after": 0.2492,
"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": 4.137,
"after": 4.137,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2884,
"after": 0.2934,
"delta": 0.005,
"percent_delta": 0.0173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3384,
"after": 0.3374,
"delta": -0.001,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2139,
"after": 1.2137,
"delta": -0.0002,
"percent_delta": -0.0002,
"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.1483,
"after": 0.1488,
"delta": 0.0005,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3596,
"after": 0.3466,
"delta": -0.013,
"percent_delta": -0.0362,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4987,
"after": 0.4974,
"delta": -0.0013,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6652,
"after": 0.6634,
"delta": -0.0018,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4816,
"after": 0.4625,
"delta": -0.0191,
"percent_delta": -0.0397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7614,
"after": 0.7637,
"delta": 0.0023,
"percent_delta": 0.003,
"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.2884,
"after": 0.2934,
"delta": 0.005,
"percent_delta": 0.0173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4816,
"after": 0.4625,
"delta": -0.0191,
"percent_delta": -0.0397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.14), rates preserved: AVG=0.293 HR/AB=0.036",
"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.2492,
"after": 0.0,
"delta": -0.2492,
"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": 4.137,
"after": 4.0,
"delta": -0.137,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3374,
"after": 0.0,
"delta": -0.3374,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2137,
"after": 1.0,
"delta": -0.2137,
"percent_delta": -0.1761,
"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.1488,
"after": 0.0,
"delta": -0.1488,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6634,
"after": 1.0,
"delta": 0.3366,
"percent_delta": 0.5074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7637,
"after": 1.0,
"delta": 0.2363,
"percent_delta": 0.3094,
"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.6634,
"after": 1.0,
"delta": 0.3366,
"percent_delta": 0.5074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3374,
"after": 0.0,
"delta": -0.3374,
"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.4974,
"after": 0.0,
"delta": -0.4974,
"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.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": 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.2934,
"after": 0.25,
"delta": -0.0434,
"percent_delta": -0.1479,
"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.3466,
"after": 0.25,
"delta": -0.0966,
"percent_delta": -0.2787,
"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.4625,
"after": 0.25,
"delta": -0.2125,
"percent_delta": -0.4595,
"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.4625,
"after": 0.25,
"delta": -0.2125,
"percent_delta": -0.4595,
"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": 2.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": 2.0,
"delta": -2.0,
"percent_delta": -0.5,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"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": 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.2934,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3466,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4625,
"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.2934,
"delta": 0.0434,
"percent_delta": 0.1735,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.3466,
"delta": 0.0966,
"percent_delta": 0.3866,
"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.4625,
"delta": 0.2125,
"percent_delta": 0.8498,
"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.4625,
"delta": 0.2125,
"percent_delta": 0.8498,
"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.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.49,
"after": 2.0,
"delta": -1.49,
"percent_delta": -0.4269,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2934,
"delta": 0.0224,
"percent_delta": 0.0827,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.259,
"after": 2.0,
"delta": 1.741,
"percent_delta": 6.722,
"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.351,
"after": 0.3466,
"delta": -0.0044,
"percent_delta": -0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.53,
"after": 1.0,
"delta": 0.47,
"percent_delta": 0.8868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.464,
"after": 0.4625,
"delta": -0.0015,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.593,
"after": 0.0,
"delta": -0.593,
"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_BB",
"before": 0.259,
"after": 2.0,
"delta": 1.741,
"percent_delta": 6.722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.49,
"after": 2.0,
"delta": -1.49,
"percent_delta": -0.4269,
"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.148 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.490 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.259 | - |
| predicted_H | 0.950 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.351 | - |
| predicted_R | 0.370 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.464 | - |
| predicted_SO | 0.593 | - |
Final model 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.249 | 0.101 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 4.137 | 0.647 |
| predicted_AVG | 0.288 | 0.017 |
| predicted_BB | 0.338 | 0.079 |
| predicted_H | 1.214 | 0.264 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.148 | 0.028 |
| predicted_OBP | 0.360 | 0.009 |
| predicted_R | 0.499 | 0.129 |
| predicted_RBI | 0.665 | 0.135 |
| predicted_SLG | 0.482 | 0.018 |
| predicted_SO | 0.761 | 0.168 |
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.249 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 4.137 | 0.000 |
| predicted_AVG | 0.293 | 0.005 |
| predicted_BB | 0.337 | -0.001 |
| predicted_H | 1.214 | -0.000 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.149 | 0.001 |
| predicted_OBP | 0.347 | -0.013 |
| predicted_R | 0.497 | -0.001 |
| predicted_RBI | 0.663 | -0.002 |
| predicted_SLG | 0.463 | -0.019 |
| predicted_SO | 0.764 | 0.002 |
AB rounded to 4 (raw=4.14), rates preserved: AVG=0.293 HR/AB=0.036
| 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.249 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | -0.137 |
| predicted_AVG | 0.250 | -0.043 |
| predicted_BB | 0.000 | -0.337 |
| predicted_H | 1.000 | -0.214 |
| predicted_HR | 0.000 | -0.149 |
| predicted_OBP | 0.250 | -0.097 |
| predicted_R | 0.000 | -0.497 |
| predicted_RBI | 1.000 | 0.337 |
| predicted_SLG | 0.250 | -0.213 |
| 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 | 2.000 | -2.000 |
| BB | 2.000 | 2.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 | - | 19.000 | 8.000 | 4.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 4.000 | 0.4211 | 0.5000 | 0.6316 | 0.4210 | 0.0000 | 0.1053 | 0.1579 | 0.2105 |
| last_10 | 0.20 | 9 | - | 37.000 | 10.000 | 4.000 | 0.000 | 1.000 | 7.000 | 6.000 | 3.000 | 9.000 | 0.2703 | 0.3250 | 0.4595 | 0.2703 | 0.0270 | 0.1892 | 0.0811 | 0.2432 |
| season | 0.60 | 14 | - | 92.000 | 30.000 | 4.000 | 0.000 | 5.000 | 19.000 | 10.000 | 7.000 | 16.000 | 0.3261 | 0.3737 | 0.5326 | 0.3261 | 0.0544 | 0.2065 | 0.0761 | 0.1739 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4130 |
| predicted_3B | 0.0050 |
| predicted_AB | 5.1840 |
| predicted_AVG | 0.3165 |
| predicted_BB | 0.4670 |
| predicted_H | 1.6410 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.1940 |
| predicted_OBP | 0.3736 |
| predicted_R | 0.7070 |
| predicted_RBI | 0.8840 |
| predicted_SLG | 0.5102 |
| predicted_SO | 1.0340 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1480 | 0.4130 | 0.2492 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0019 | model_form_blend |
| predicted_AB | 3.4900 | 5.1840 | 4.1370 | model_form_blend |
| predicted_AVG | 0.2710 | 0.3165 | 0.2884 | model_form_blend |
| predicted_BB | 0.2590 | 0.4670 | 0.3384 | model_form_blend |
| predicted_H | 0.9500 | 1.6410 | 1.2139 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.1200 | 0.1940 | 0.1483 | model_form_blend |
| predicted_OBP | 0.3510 | 0.3736 | 0.3596 | model_form_blend |
| predicted_R | 0.3700 | 0.7070 | 0.4987 | model_form_blend |
| predicted_RBI | 0.5300 | 0.8840 | 0.6652 | model_form_blend |
| predicted_SLG | 0.4640 | 0.5102 | 0.4816 | model_form_blend |
| predicted_SO | 0.5930 | 1.0340 | 0.7614 | 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 | 28 |
| Season rows before report date | 28 |
| 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 | 2 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.326 |
| 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 | 1 |
| 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 | LF |
| gameID | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 685133 |
| playerID | 685133 |
| playerName | Wade Meckler |
| pos | OF |
| started | True |
| startingPosition | LF |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 15.7 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.412 |
| sl_xwoba | 0.36 |
| sl_xba | 0.277 |
| sl_xslg | 0.497 |
| sl_sweet_spot_percent | 41.0 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 28.2 |
| sl_exit_velocity_avg | 85.1 |
| sl_launch_angle_avg | 6.6 |
| sl_whiff_percent | 21.8 |
| sl_swing_percent | 47.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.193 | 0.000 | 0.000 | Hitting_2B | 0.193 | 0.000 | -0.193 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.980 | 3.000 | 7.000 | Hitting_AB | 3.541 | 6.000 | -0.541 | -3.000 |
| predicted_AVG | 0.217 | 0.000 | 0.143 | Hitting_AVG | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_BB | 0.977 | 1.000 | 2.000 | Hitting_BB | 0.977 | 0.000 | 0.023 | 1.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.876 | 0.000 | -0.876 | 0.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.243 | 0.000 | -0.243 | 0.000 |
| predicted_OBP | 0.335 | 0.250 | 0.333 | Hitting_OBP | 0.417 | 0.000 | -0.167 | 0.250 |
| predicted_R | 0.764 | 0.000 | 1.000 | Hitting_R | 0.764 | 0.000 | -0.764 | 0.000 |
| predicted_RBI | 0.420 | 0.000 | 1.000 | Hitting_RBI | 0.571 | 0.000 | -0.571 | 0.000 |
| predicted_SLG | 0.395 | 0.000 | 0.143 | Hitting_SLG | 0.508 | 0.000 | -0.508 | 0.000 |
| predicted_SO | 1.039 | 1.000 | 2.000 | Hitting_SO | 1.039 | 2.000 | -0.039 | -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 | 1 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_OBP: 0.3350 -> 0.3628 (boost 0.0278, better) |
| Biggest Deboost | predicted_AB: 3.9800 -> 3.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 | 11 | 9 | 2 | 8 | 3 | predicted_AB: 3.9800 -> 6.5543 (boost 2.5743, better) | predicted_AVG: 0.2170 -> 0.2091 (deboost -0.0079, 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.3458 -> 0.3628 (boost 0.0170, 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 | 3 | 4 | predicted_AB: 6.5543 -> 7.0000 (boost 0.4457, better) | predicted_H: 1.3483 -> 1.0000 (deboost -0.3483, worse) | AB rounded to 7 (raw=6.55), rates preserved: AVG=0.206 HR/AB=0.046 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2375 -> 1.0000 (deboost -0.2375, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3900 -> 0.1430 (deboost -0.2470, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1430 -> 0.3900 (boost 0.2470, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "545361",
"player_name": "Mike Trout",
"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.193,
"predicted_3B": 0.0,
"predicted_AB": 3.98,
"predicted_AVG": 0.217,
"predicted_BB": 0.977,
"predicted_H": 0.87,
"predicted_HR": 0.18,
"predicted_OBP": 0.335,
"predicted_R": 0.764,
"predicted_RBI": 0.42,
"predicted_SLG": 0.395,
"predicted_SO": 1.039
},
"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.2984,
"predicted_3B": 0.0004,
"predicted_AB": 6.5543,
"predicted_AVG": 0.2091,
"predicted_BB": 1.6212,
"predicted_H": 1.3486,
"predicted_HBP": 0.09,
"predicted_HR": 0.3018,
"predicted_OBP": 0.3458,
"predicted_R": 1.2409,
"predicted_RBI": 0.7282,
"predicted_SLG": 0.3896,
"predicted_SO": 1.9852
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.193,
"after": 0.2984,
"delta": 0.1054,
"percent_delta": 0.5461,
"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": 3.98,
"after": 6.5543,
"delta": 2.5743,
"percent_delta": 0.6468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.217,
"after": 0.2091,
"delta": -0.0079,
"percent_delta": -0.0364,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.977,
"after": 1.6212,
"delta": 0.6442,
"percent_delta": 0.6594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 1.3486,
"delta": 0.4786,
"percent_delta": 0.5501,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.3018,
"delta": 0.1218,
"percent_delta": 0.6767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.335,
"after": 0.3458,
"delta": 0.0108,
"percent_delta": 0.0322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.764,
"after": 1.2409,
"delta": 0.4769,
"percent_delta": 0.6242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.7282,
"delta": 0.3082,
"percent_delta": 0.7338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.395,
"after": 0.3896,
"delta": -0.0054,
"percent_delta": -0.0137,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.039,
"after": 1.9852,
"delta": 0.9462,
"percent_delta": 0.9107,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 9,
"deboosted_metrics": 2,
"better_metrics": 8,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.98,
"after": 6.5543,
"delta": 2.5743,
"percent_delta": 0.6468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.217,
"after": 0.2091,
"delta": -0.0079,
"percent_delta": -0.0364,
"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.2984,
"predicted_3B": 0.0004,
"predicted_AB": 6.5543,
"predicted_AVG": 0.2057,
"predicted_BB": 1.6163,
"predicted_H": 1.3483,
"predicted_HBP": 0.09,
"predicted_HR": 0.3029,
"predicted_OBP": 0.3628,
"predicted_R": 1.2375,
"predicted_RBI": 0.7262,
"predicted_SLG": 0.39,
"predicted_SO": 1.9912
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2984,
"after": 0.2984,
"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": 6.5543,
"after": 6.5543,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2091,
"after": 0.2057,
"delta": -0.0034,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.6212,
"after": 1.6163,
"delta": -0.0049,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3486,
"after": 1.3483,
"delta": -0.0003,
"percent_delta": -0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.09,
"after": 0.09,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3018,
"after": 0.3029,
"delta": 0.0011,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3458,
"after": 0.3628,
"delta": 0.017,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2409,
"after": 1.2375,
"delta": -0.0034,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7282,
"after": 0.7262,
"delta": -0.002,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3896,
"after": 0.39,
"delta": 0.0004,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.9852,
"after": 1.9912,
"delta": 0.006,
"percent_delta": 0.003,
"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.3458,
"after": 0.3628,
"delta": 0.017,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.55), rates preserved: AVG=0.206 HR/AB=0.046",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 2.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2984,
"after": 0.0,
"delta": -0.2984,
"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": 6.5543,
"after": 7.0,
"delta": 0.4457,
"percent_delta": 0.068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.6163,
"after": 2.0,
"delta": 0.3837,
"percent_delta": 0.2374,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3483,
"after": 1.0,
"delta": -0.3483,
"percent_delta": -0.2583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3029,
"after": 0.0,
"delta": -0.3029,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7262,
"after": 1.0,
"delta": 0.2738,
"percent_delta": 0.377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9912,
"after": 2.0,
"delta": 0.0088,
"percent_delta": 0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 6.5543,
"after": 7.0,
"delta": 0.4457,
"percent_delta": 0.068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3483,
"after": 1.0,
"delta": -0.3483,
"percent_delta": -0.2583,
"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": 7.0,
"predicted_BB": 2.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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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.2375,
"after": 1.0,
"delta": -0.2375,
"percent_delta": -0.1919,
"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": 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_R",
"before": 1.2375,
"after": 1.0,
"delta": -0.2375,
"percent_delta": -0.1919,
"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": 7.0,
"predicted_AVG": 0.143,
"predicted_BB": 2.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.143,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2057,
"after": 0.143,
"delta": -0.0627,
"percent_delta": -0.3048,
"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_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.3628,
"after": 0.333,
"delta": -0.0298,
"percent_delta": -0.0821,
"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.39,
"after": 0.143,
"delta": -0.247,
"percent_delta": -0.6333,
"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_SLG",
"before": 0.39,
"after": 0.143,
"delta": -0.247,
"percent_delta": -0.6333,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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.2057,
"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.3628,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.39,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.143,
"after": 0.2057,
"delta": 0.0627,
"percent_delta": 0.4386,
"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.333,
"after": 0.3628,
"delta": 0.0298,
"percent_delta": 0.0896,
"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.143,
"after": 0.39,
"delta": 0.247,
"percent_delta": 1.7273,
"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.143,
"after": 0.39,
"delta": 0.247,
"percent_delta": 1.7273,
"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.193,
"after": 0.0,
"delta": -0.193,
"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.98,
"after": 3.0,
"delta": -0.98,
"percent_delta": -0.2462,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.217,
"after": 0.2057,
"delta": -0.0113,
"percent_delta": -0.0521,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.977,
"after": 1.0,
"delta": 0.023,
"percent_delta": 0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.335,
"after": 0.3628,
"delta": 0.0278,
"percent_delta": 0.083,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.764,
"after": 0.0,
"delta": -0.764,
"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.395,
"after": 0.39,
"delta": -0.005,
"percent_delta": -0.0127,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.039,
"after": 1.0,
"delta": -0.039,
"percent_delta": -0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.335,
"after": 0.3628,
"delta": 0.0278,
"percent_delta": 0.083,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.98,
"after": 3.0,
"delta": -0.98,
"percent_delta": -0.2462,
"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.193 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.980 | - |
| predicted_AVG | 0.217 | - |
| predicted_BB | 0.977 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.335 | - |
| predicted_R | 0.764 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.395 | - |
| predicted_SO | 1.039 | - |
Final model 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.105 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.554 | 2.574 |
| predicted_AVG | 0.209 | -0.008 |
| predicted_BB | 1.621 | 0.644 |
| predicted_H | 1.349 | 0.479 |
| predicted_HBP | 0.090 | - |
| predicted_HR | 0.302 | 0.122 |
| predicted_OBP | 0.346 | 0.011 |
| predicted_R | 1.241 | 0.477 |
| predicted_RBI | 0.728 | 0.308 |
| predicted_SLG | 0.390 | -0.005 |
| predicted_SO | 1.985 | 0.946 |
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.000 | 0.000 |
| predicted_AB | 6.554 | 0.000 |
| predicted_AVG | 0.206 | -0.003 |
| predicted_BB | 1.616 | -0.005 |
| predicted_H | 1.348 | -0.000 |
| predicted_HBP | 0.090 | 0.000 |
| predicted_HR | 0.303 | 0.001 |
| predicted_OBP | 0.363 | 0.017 |
| predicted_R | 1.238 | -0.003 |
| predicted_RBI | 0.726 | -0.002 |
| predicted_SLG | 0.390 | 0.000 |
| predicted_SO | 1.991 | 0.006 |
AB rounded to 7 (raw=6.55), rates preserved: AVG=0.206 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 2.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 2.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 | 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.298 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.446 |
| predicted_AVG | 0.143 | -0.063 |
| predicted_BB | 2.000 | 0.384 |
| predicted_H | 1.000 | -0.348 |
| predicted_HR | 0.000 | -0.303 |
| predicted_OBP | 0.333 | -0.030 |
| predicted_R | 1.000 | -0.238 |
| predicted_RBI | 1.000 | 0.274 |
| predicted_SLG | 0.143 | -0.247 |
| predicted_SO | 2.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 | 3.000 | -4.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 | -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 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 8.000 | 0.0526 | 0.1818 | 0.0526 | 0.0526 | 0.0000 | 0.0000 | 0.1579 | 0.4210 |
| last_10 | 0.20 | 10 | - | 36.000 | 7.000 | 2.000 | 0.000 | 1.000 | 3.000 | 7.000 | 10.000 | 12.000 | 0.1944 | 0.3696 | 0.3333 | 0.1944 | 0.0278 | 0.0833 | 0.2778 | 0.3333 |
| season | 0.60 | 65 | - | 917.000 | 227.000 | 50.000 | 0.000 | 63.000 | 148.000 | 198.000 | 253.000 | 269.000 | 0.2475 | 0.4172 | 0.5082 | 0.2475 | 0.0687 | 0.1614 | 0.2759 | 0.2933 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4310 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.7940 |
| predicted_AVG | 0.1992 |
| predicted_BB | 2.4320 |
| predicted_H | 1.9510 |
| predicted_HBP | 0.0900 |
| predicted_HR | 0.4550 |
| predicted_OBP | 0.3594 |
| predicted_R | 1.8410 |
| predicted_RBI | 1.1160 |
| predicted_SLG | 0.3828 |
| predicted_SO | 3.1760 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1930 | 0.4310 | 0.2984 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9800 | 9.7940 | 6.5543 | model_form_blend |
| predicted_AVG | 0.2170 | 0.1992 | 0.2091 | model_form_blend |
| predicted_BB | 0.9770 | 2.4320 | 1.6212 | model_form_blend |
| predicted_H | 0.8700 | 1.9510 | 1.3486 | model_form_blend |
| predicted_HBP | - | 0.0900 | 0.0900 | form_only |
| predicted_HR | 0.1800 | 0.4550 | 0.3018 | model_form_blend |
| predicted_OBP | 0.3350 | 0.3594 | 0.3458 | model_form_blend |
| predicted_R | 0.7640 | 1.8410 | 1.2409 | model_form_blend |
| predicted_RBI | 0.4200 | 1.1160 | 0.7282 | model_form_blend |
| predicted_SLG | 0.3950 | 0.3828 | 0.3896 | model_form_blend |
| predicted_SO | 1.0390 | 3.1760 | 1.9852 | 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 | 259 |
| Season rows before report date | 259 |
| Report year | 2026 |
| Profile rows used | 259 |
| 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.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 | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 6 |
| 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 | 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 | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 545361 |
| playerID | 545361 |
| playerName | Mike Trout |
| pos | CF |
| started | True |
| startingPosition | DH |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.2 |
| sl_bb_percent | 20.5 |
| sl_woba | 0.373 |
| sl_xwoba | 0.416 |
| sl_xba | 0.257 |
| sl_xslg | 0.565 |
| sl_sweet_spot_percent | 35.8 |
| sl_barrel_batted_rate | 20.9 |
| sl_hard_hit_percent | 51.6 |
| sl_exit_velocity_avg | 91.7 |
| sl_launch_angle_avg | 20.2 |
| sl_whiff_percent | 22.4 |
| sl_swing_percent | 37.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.166 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.010 | 1.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 3.601 | 4.000 | 4.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.237 | 0.250 | 0.250 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.378 | 0.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.853 | 1.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.109 | 0.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.309 | 0.250 | 0.250 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.473 | 0.000 | 0.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.442 | 0.000 | 0.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.379 | 0.750 | 0.250 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.858 | 0.000 | 1.000 | Hitting_SO | - | - | - | - |
| 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_3B: 0.0100 -> 1.0000 (boost 0.9900, better) |
| Biggest Deboost | predicted_SO: 0.8580 -> 0.0000 (deboost -0.8580, 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 | 3 | 4 | 2 | 5 | predicted_AB: 3.6429 -> 4.0000 (boost 0.3571, better) | predicted_RBI: 0.4510 -> 0.0000 (deboost -0.4510, worse) | AB rounded to 4 (raw=3.64), rates preserved: AVG=0.239 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4753 -> 0.0000 (deboost -0.4753, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2390 -> 0.2500 (boost 0.0110, better) | predicted_SLG: 0.3845 -> 0.2500 (deboost -0.1345, 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_3B: 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.3845 (boost 0.1345, better) | predicted_AVG: 0.2500 -> 0.2390 (deboost -0.0110, worse) | 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.166,
"predicted_3B": 0.01,
"predicted_AB": 3.601,
"predicted_AVG": 0.237,
"predicted_BB": 0.378,
"predicted_H": 0.853,
"predicted_HR": 0.109,
"predicted_OBP": 0.309,
"predicted_R": 0.473,
"predicted_RBI": 0.442,
"predicted_SLG": 0.379,
"predicted_SO": 0.858
},
"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.1696,
"predicted_3B": 0.0108,
"predicted_AB": 3.6429,
"predicted_AVG": 0.2391,
"predicted_BB": 0.3654,
"predicted_H": 0.871,
"predicted_HBP": 0.035,
"predicted_HR": 0.1125,
"predicted_OBP": 0.3097,
"predicted_R": 0.4766,
"predicted_RBI": 0.4522,
"predicted_SLG": 0.3836,
"predicted_SO": 0.8572
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.166,
"after": 0.1696,
"delta": 0.0036,
"percent_delta": 0.0217,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.01,
"after": 0.0108,
"delta": 0.0008,
"percent_delta": 0.08,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.601,
"after": 3.6429,
"delta": 0.0419,
"percent_delta": 0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2391,
"delta": 0.0021,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.378,
"after": 0.3654,
"delta": -0.0126,
"percent_delta": -0.0333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.853,
"after": 0.871,
"delta": 0.018,
"percent_delta": 0.0211,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.109,
"after": 0.1125,
"delta": 0.0035,
"percent_delta": 0.0321,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3097,
"delta": 0.0007,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.473,
"after": 0.4766,
"delta": 0.0036,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.442,
"after": 0.4522,
"delta": 0.0102,
"percent_delta": 0.0231,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.379,
"after": 0.3836,
"delta": 0.0046,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.858,
"after": 0.8572,
"delta": -0.0008,
"percent_delta": -0.0009,
"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": 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.1696,
"predicted_3B": 0.0108,
"predicted_AB": 3.6429,
"predicted_AVG": 0.239,
"predicted_BB": 0.3643,
"predicted_H": 0.8708,
"predicted_HBP": 0.035,
"predicted_HR": 0.1129,
"predicted_OBP": 0.3082,
"predicted_R": 0.4753,
"predicted_RBI": 0.451,
"predicted_SLG": 0.3845,
"predicted_SO": 0.8598
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1696,
"after": 0.1696,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0108,
"after": 0.0108,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6429,
"after": 3.6429,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2391,
"after": 0.239,
"delta": -0.0001,
"percent_delta": -0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3654,
"after": 0.3643,
"delta": -0.0011,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.871,
"after": 0.8708,
"delta": -0.0002,
"percent_delta": -0.0002,
"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.1125,
"after": 0.1129,
"delta": 0.0004,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3097,
"after": 0.3082,
"delta": -0.0015,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4766,
"after": 0.4753,
"delta": -0.0013,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4522,
"after": 0.451,
"delta": -0.0012,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3836,
"after": 0.3845,
"delta": 0.0009,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8572,
"after": 0.8598,
"delta": 0.0026,
"percent_delta": 0.003,
"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=3.64), rates preserved: AVG=0.239 HR/AB=0.031",
"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.1696,
"after": 0.0,
"delta": -0.1696,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0108,
"after": 0.0,
"delta": -0.0108,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6429,
"after": 4.0,
"delta": 0.3571,
"percent_delta": 0.098,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3643,
"after": 0.0,
"delta": -0.3643,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8708,
"after": 1.0,
"delta": 0.1292,
"percent_delta": 0.1484,
"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.1129,
"after": 0.0,
"delta": -0.1129,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.451,
"after": 0.0,
"delta": -0.451,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8598,
"after": 1.0,
"delta": 0.1402,
"percent_delta": 0.1631,
"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.6429,
"after": 4.0,
"delta": 0.3571,
"percent_delta": 0.098,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.451,
"after": 0.0,
"delta": -0.451,
"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.4753,
"after": 0.0,
"delta": -0.4753,
"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.4753,
"after": 0.0,
"delta": -0.4753,
"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.239,
"after": 0.25,
"delta": 0.011,
"percent_delta": 0.046,
"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.3082,
"after": 0.25,
"delta": -0.0582,
"percent_delta": -0.1888,
"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.3845,
"after": 0.25,
"delta": -0.1345,
"percent_delta": -0.3498,
"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.239,
"after": 0.25,
"delta": 0.011,
"percent_delta": 0.046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3845,
"after": 0.25,
"delta": -0.1345,
"percent_delta": -0.3498,
"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": 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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_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_3B",
"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": 1.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.239,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3082,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3845,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.239,
"delta": -0.011,
"percent_delta": -0.0438,
"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.3082,
"delta": 0.0582,
"percent_delta": 0.2329,
"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.3845,
"delta": 0.1345,
"percent_delta": 0.5381,
"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.3845,
"delta": 0.1345,
"percent_delta": 0.5381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.239,
"delta": -0.011,
"percent_delta": -0.0438,
"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.166,
"after": 0.0,
"delta": -0.166,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.01,
"after": 1.0,
"delta": 0.99,
"percent_delta": 99.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.601,
"after": 4.0,
"delta": 0.399,
"percent_delta": 0.1108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.239,
"delta": 0.002,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 0.853,
"after": 1.0,
"delta": 0.147,
"percent_delta": 0.1723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.109,
"after": 0.0,
"delta": -0.109,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3082,
"delta": -0.0008,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.473,
"after": 0.0,
"delta": -0.473,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.442,
"after": 0.0,
"delta": -0.442,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.379,
"after": 0.3845,
"delta": 0.0055,
"percent_delta": 0.0145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.858,
"after": 0.0,
"delta": -0.858,
"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_3B",
"before": 0.01,
"after": 1.0,
"delta": 0.99,
"percent_delta": 99.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.858,
"after": 0.0,
"delta": -0.858,
"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.166 | - |
| predicted_3B | 0.010 | - |
| predicted_AB | 3.601 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.378 | - |
| predicted_H | 0.853 | - |
| predicted_HR | 0.109 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.473 | - |
| predicted_RBI | 0.442 | - |
| predicted_SLG | 0.379 | - |
| predicted_SO | 0.858 | - |
Final model 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.004 |
| predicted_3B | 0.011 | 0.001 |
| predicted_AB | 3.643 | 0.042 |
| predicted_AVG | 0.239 | 0.002 |
| predicted_BB | 0.365 | -0.013 |
| predicted_H | 0.871 | 0.018 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.113 | 0.004 |
| predicted_OBP | 0.310 | 0.001 |
| predicted_R | 0.477 | 0.004 |
| predicted_RBI | 0.452 | 0.010 |
| predicted_SLG | 0.384 | 0.005 |
| predicted_SO | 0.857 | -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.170 | 0.000 |
| predicted_3B | 0.011 | 0.000 |
| predicted_AB | 3.643 | 0.000 |
| predicted_AVG | 0.239 | -0.000 |
| predicted_BB | 0.364 | -0.001 |
| predicted_H | 0.871 | -0.000 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.113 | 0.000 |
| predicted_OBP | 0.308 | -0.002 |
| predicted_R | 0.475 | -0.001 |
| predicted_RBI | 0.451 | -0.001 |
| predicted_SLG | 0.385 | 0.001 |
| predicted_SO | 0.860 | 0.003 |
AB rounded to 4 (raw=3.64), rates preserved: AVG=0.239 HR/AB=0.031
| 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.170 |
| predicted_3B | 0.000 | -0.011 |
| predicted_AB | 4.000 | 0.357 |
| predicted_AVG | 0.250 | 0.011 |
| predicted_BB | 0.000 | -0.364 |
| predicted_H | 1.000 | 0.129 |
| predicted_HR | 0.000 | -0.113 |
| predicted_OBP | 0.250 | -0.058 |
| predicted_R | 0.000 | -0.475 |
| predicted_RBI | 0.000 | -0.451 |
| predicted_SLG | 0.250 | -0.135 |
| predicted_SO | 1.000 | 0.140 |
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 | 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 | 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.8670 |
| predicted_AVG | 0.2502 |
| predicted_BB | 0.2980 |
| predicted_H | 0.9670 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1310 |
| predicted_OBP | 0.3134 |
| predicted_R | 0.4960 |
| predicted_RBI | 0.5070 |
| predicted_SLG | 0.4085 |
| predicted_SO | 0.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1660 | 0.1890 | 0.1696 | model_form_blend |
| predicted_3B | 0.0100 | 0.0150 | 0.0108 | model_form_blend |
| predicted_AB | 3.6010 | 3.8670 | 3.6429 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2502 | 0.2391 | model_form_blend |
| predicted_BB | 0.3780 | 0.2980 | 0.3654 | model_form_blend |
| predicted_H | 0.8530 | 0.9670 | 0.8710 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1090 | 0.1310 | 0.1125 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3134 | 0.3097 | model_form_blend |
| predicted_R | 0.4730 | 0.4960 | 0.4766 | model_form_blend |
| predicted_RBI | 0.4420 | 0.5070 | 0.4522 | model_form_blend |
| predicted_SLG | 0.3790 | 0.4085 | 0.3836 | model_form_blend |
| predicted_SO | 0.8580 | 0.8530 | 0.8572 | 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 | 1 |
| 2B | 0 |
| 3B | 1 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| 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.203 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.012 | 0.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 3.692 | 3.000 | 4.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.259 | 0.000 | 0.250 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.462 | 0.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.957 | 0.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.158 | 0.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.342 | 0.000 | 0.250 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.526 | 1.000 | 1.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.583 | 1.000 | 1.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.449 | 0.000 | 0.250 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.891 | 0.000 | 1.000 | Hitting_SO | - | - | - | - |
| 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_R: 0.5260 -> 1.0000 (boost 0.4740, better) |
| Biggest Deboost | predicted_H: 0.9570 -> 0.0000 (deboost -0.9570, 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.4490 -> 0.4426 (deboost -0.0064, 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 | 6 | 3 | 3 | 2 | 4 | predicted_RBI: 0.5695 -> 1.0000 (boost 0.4305, better) | predicted_BB: 0.4349 -> 0.0000 (deboost -0.4349, worse) | AB rounded to 4 (raw=3.72), rates preserved: AVG=0.258 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5199 -> 1.0000 (boost 0.4801, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4428 -> 0.2500 (deboost -0.1928, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 1 | 2 | predicted_SF: 0.0000 -> 1.0000 (boost 1.0000, higher) | 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.4428 (boost 0.1928, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641820",
"player_name": "Trey Mancini",
"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.203,
"predicted_3B": 0.012,
"predicted_AB": 3.692,
"predicted_AVG": 0.259,
"predicted_BB": 0.462,
"predicted_H": 0.957,
"predicted_HR": 0.158,
"predicted_OBP": 0.342,
"predicted_R": 0.526,
"predicted_RBI": 0.583,
"predicted_SLG": 0.449,
"predicted_SO": 0.891
},
"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.2008,
"predicted_3B": 0.0125,
"predicted_AB": 3.7196,
"predicted_AVG": 0.2576,
"predicted_BB": 0.4362,
"predicted_H": 0.9586,
"predicted_HBP": 0.035,
"predicted_HR": 0.1537,
"predicted_OBP": 0.3375,
"predicted_R": 0.5213,
"predicted_RBI": 0.571,
"predicted_SLG": 0.4426,
"predicted_SO": 0.885
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.203,
"after": 0.2008,
"delta": -0.0022,
"percent_delta": -0.0108,
"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.692,
"after": 3.7196,
"delta": 0.0276,
"percent_delta": 0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2576,
"delta": -0.0014,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 0.4362,
"delta": -0.0258,
"percent_delta": -0.0558,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.957,
"after": 0.9586,
"delta": 0.0016,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.158,
"after": 0.1537,
"delta": -0.0043,
"percent_delta": -0.0272,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.3375,
"delta": -0.0045,
"percent_delta": -0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.526,
"after": 0.5213,
"delta": -0.0047,
"percent_delta": -0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.583,
"after": 0.571,
"delta": -0.012,
"percent_delta": -0.0206,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.449,
"after": 0.4426,
"delta": -0.0064,
"percent_delta": -0.0143,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.891,
"after": 0.885,
"delta": -0.006,
"percent_delta": -0.0067,
"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.449,
"after": 0.4426,
"delta": -0.0064,
"percent_delta": -0.0143,
"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": 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.2008,
"predicted_3B": 0.0125,
"predicted_AB": 3.7196,
"predicted_AVG": 0.2577,
"predicted_BB": 0.4349,
"predicted_H": 0.9584,
"predicted_HBP": 0.035,
"predicted_HR": 0.1543,
"predicted_OBP": 0.3354,
"predicted_R": 0.5199,
"predicted_RBI": 0.5695,
"predicted_SLG": 0.4428,
"predicted_SO": 0.8877
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2008,
"after": 0.2008,
"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.7196,
"after": 3.7196,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2576,
"after": 0.2577,
"delta": 0.0001,
"percent_delta": 0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4362,
"after": 0.4349,
"delta": -0.0013,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9586,
"after": 0.9584,
"delta": -0.0002,
"percent_delta": -0.0002,
"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.1537,
"after": 0.1543,
"delta": 0.0006,
"percent_delta": 0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3375,
"after": 0.3354,
"delta": -0.0021,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5213,
"after": 0.5199,
"delta": -0.0014,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.571,
"after": 0.5695,
"delta": -0.0015,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4426,
"after": 0.4428,
"delta": 0.0002,
"percent_delta": 0.0005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.885,
"after": 0.8877,
"delta": 0.0027,
"percent_delta": 0.0031,
"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=3.72), rates preserved: AVG=0.258 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.2008,
"after": 0.0,
"delta": -0.2008,
"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.7196,
"after": 4.0,
"delta": 0.2804,
"percent_delta": 0.0754,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4349,
"after": 0.0,
"delta": -0.4349,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9584,
"after": 1.0,
"delta": 0.0416,
"percent_delta": 0.0434,
"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.1543,
"after": 0.0,
"delta": -0.1543,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5695,
"after": 1.0,
"delta": 0.4305,
"percent_delta": 0.7559,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8877,
"after": 1.0,
"delta": 0.1123,
"percent_delta": 0.1265,
"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_RBI",
"before": 0.5695,
"after": 1.0,
"delta": 0.4305,
"percent_delta": 0.7559,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4349,
"after": 0.0,
"delta": -0.4349,
"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.5199,
"after": 1.0,
"delta": 0.4801,
"percent_delta": 0.9234,
"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.5199,
"after": 1.0,
"delta": 0.4801,
"percent_delta": 0.9234,
"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.2577,
"after": 0.25,
"delta": -0.0077,
"percent_delta": -0.0299,
"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.3354,
"after": 0.25,
"delta": -0.0854,
"percent_delta": -0.2546,
"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.4428,
"after": 0.25,
"delta": -0.1928,
"percent_delta": -0.4354,
"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.4428,
"after": 0.25,
"delta": -0.1928,
"percent_delta": -0.4354,
"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": 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": 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": 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": 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": 1,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SF",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "higher",
"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.2577,
"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.3354,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 1.0,
"predicted_SLG": 0.4428,
"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.2577,
"delta": 0.0077,
"percent_delta": 0.0307,
"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.3354,
"delta": 0.0854,
"percent_delta": 0.3415,
"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": 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.25,
"after": 0.4428,
"delta": 0.1928,
"percent_delta": 0.7711,
"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.4428,
"delta": 0.1928,
"percent_delta": 0.7711,
"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": 0.0,
"delta": -0.203,
"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.692,
"after": 3.0,
"delta": -0.692,
"percent_delta": -0.1874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2577,
"delta": -0.0013,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 0.0,
"delta": -0.462,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.957,
"after": 0.0,
"delta": -0.957,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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_OBP",
"before": 0.342,
"after": 0.3354,
"delta": -0.0066,
"percent_delta": -0.0193,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.526,
"after": 1.0,
"delta": 0.474,
"percent_delta": 0.9011,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.583,
"after": 1.0,
"delta": 0.417,
"percent_delta": 0.7153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.449,
"after": 0.4428,
"delta": -0.0062,
"percent_delta": -0.0138,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.891,
"after": 0.0,
"delta": -0.891,
"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_R",
"before": 0.526,
"after": 1.0,
"delta": 0.474,
"percent_delta": 0.9011,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.957,
"after": 0.0,
"delta": -0.957,
"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.203 | - |
| predicted_3B | 0.012 | - |
| predicted_AB | 3.692 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.462 | - |
| predicted_H | 0.957 | - |
| predicted_HR | 0.158 | - |
| predicted_OBP | 0.342 | - |
| predicted_R | 0.526 | - |
| predicted_RBI | 0.583 | - |
| predicted_SLG | 0.449 | - |
| predicted_SO | 0.891 | - |
Final model 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.002 |
| predicted_3B | 0.013 | 0.001 |
| predicted_AB | 3.720 | 0.028 |
| predicted_AVG | 0.258 | -0.001 |
| predicted_BB | 0.436 | -0.026 |
| predicted_H | 0.959 | 0.002 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.154 | -0.004 |
| predicted_OBP | 0.338 | -0.005 |
| predicted_R | 0.521 | -0.005 |
| predicted_RBI | 0.571 | -0.012 |
| predicted_SLG | 0.443 | -0.006 |
| predicted_SO | 0.885 | -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.201 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.720 | 0.000 |
| predicted_AVG | 0.258 | 0.000 |
| predicted_BB | 0.435 | -0.001 |
| predicted_H | 0.958 | -0.000 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.154 | 0.001 |
| predicted_OBP | 0.335 | -0.002 |
| predicted_R | 0.520 | -0.001 |
| predicted_RBI | 0.570 | -0.001 |
| predicted_SLG | 0.443 | 0.000 |
| predicted_SO | 0.888 | 0.003 |
AB rounded to 4 (raw=3.72), rates preserved: AVG=0.258 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 | - |
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.201 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 4.000 | 0.280 |
| predicted_AVG | 0.250 | -0.008 |
| predicted_BB | 0.000 | -0.435 |
| predicted_H | 1.000 | 0.042 |
| predicted_HR | 0.000 | -0.154 |
| predicted_OBP | 0.250 | -0.085 |
| predicted_R | 1.000 | 0.480 |
| predicted_RBI | 1.000 | 0.430 |
| predicted_SLG | 0.250 | -0.193 |
| predicted_SO | 1.000 | 0.112 |
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 | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 0.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 | 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.8670 |
| predicted_AVG | 0.2502 |
| predicted_BB | 0.2980 |
| predicted_H | 0.9670 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1310 |
| predicted_OBP | 0.3134 |
| predicted_R | 0.4960 |
| predicted_RBI | 0.5070 |
| predicted_SLG | 0.4085 |
| predicted_SO | 0.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2030 | 0.1890 | 0.2008 | model_form_blend |
| predicted_3B | 0.0120 | 0.0150 | 0.0125 | model_form_blend |
| predicted_AB | 3.6920 | 3.8670 | 3.7196 | model_form_blend |
| predicted_AVG | 0.2590 | 0.2502 | 0.2576 | model_form_blend |
| predicted_BB | 0.4620 | 0.2980 | 0.4362 | model_form_blend |
| predicted_H | 0.9570 | 0.9670 | 0.9586 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1580 | 0.1310 | 0.1537 | model_form_blend |
| predicted_OBP | 0.3420 | 0.3134 | 0.3375 | model_form_blend |
| predicted_R | 0.5260 | 0.4960 | 0.5213 | model_form_blend |
| predicted_RBI | 0.5830 | 0.5070 | 0.5710 | model_form_blend |
| predicted_SLG | 0.4490 | 0.4085 | 0.4426 | model_form_blend |
| predicted_SO | 0.8910 | 0.8530 | 0.8850 | 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 1 |
| 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.247 | 0.000 | 0.000 | Hitting_2B | 0.247 | 0.000 | -0.247 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 4.500 | 4.000 | 8.000 | Hitting_AB | 3.951 | 6.000 | 0.049 | -2.000 |
| predicted_AVG | 0.218 | 0.000 | 0.250 | Hitting_AVG | 0.240 | 0.167 | -0.240 | -0.167 |
| predicted_BB | 0.593 | 0.000 | 1.000 | Hitting_BB | 0.593 | 0.000 | -0.593 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.099 | 0.000 | -0.099 | 0.000 |
| predicted_H | 0.980 | 0.000 | 2.000 | Hitting_H | 0.947 | 1.000 | -0.947 | -1.000 |
| predicted_HR | 0.210 | 0.000 | 1.000 | Hitting_HR | 0.179 | 1.000 | -0.179 | -1.000 |
| predicted_OBP | 0.313 | 0.000 | 0.333 | Hitting_OBP | 0.349 | 0.167 | -0.349 | -0.167 |
| predicted_R | 0.726 | 0.000 | 1.000 | Hitting_R | 0.726 | 1.000 | -0.726 | -1.000 |
| predicted_RBI | 0.580 | 0.000 | 1.000 | Hitting_RBI | 0.494 | 3.000 | -0.494 | -3.000 |
| predicted_SLG | 0.421 | 0.000 | 0.625 | Hitting_SLG | 0.448 | 0.667 | -0.448 | -0.667 |
| predicted_SO | 1.392 | 3.000 | 3.000 | Hitting_SO | 1.392 | 4.000 | 1.608 | -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: 1.3920 -> 3.0000 (boost 1.6080, worse) |
| 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.5000 -> 8.0270 (boost 3.5270, 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.4385 -> 0.4489 (boost 0.0104, better) | predicted_OBP: 0.3197 -> 0.3122 (deboost -0.0075, 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: 2.5718 -> 3.0000 (boost 0.4282, worse) | predicted_HR: 0.4362 -> 0.0000 (deboost -0.4362, worse) | AB rounded to 8 (raw=8.03), rates preserved: AVG=0.224 HR/AB=0.054 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_HR: 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: 1.3867 -> 1.0000 (deboost -0.3867, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.4489 -> 0.6250 (boost 0.1761, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 0 | 6 | 0 | 6 | - | predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.6250 -> 0.4489 (deboost -0.1761, 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.247,
"predicted_3B": 0.019,
"predicted_AB": 4.5,
"predicted_AVG": 0.218,
"predicted_BB": 0.593,
"predicted_H": 0.98,
"predicted_HR": 0.21,
"predicted_OBP": 0.313,
"predicted_R": 0.726,
"predicted_RBI": 0.58,
"predicted_SLG": 0.421,
"predicted_SO": 1.392
},
"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.4353,
"predicted_3B": 0.0287,
"predicted_AB": 8.027,
"predicted_AVG": 0.2223,
"predicted_BB": 1.0267,
"predicted_H": 1.8022,
"predicted_HBP": 0.344,
"predicted_HR": 0.4346,
"predicted_OBP": 0.3197,
"predicted_R": 1.3905,
"predicted_RBI": 1.155,
"predicted_SLG": 0.4385,
"predicted_SO": 2.5641
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.247,
"after": 0.4353,
"delta": 0.1883,
"percent_delta": 0.7623,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0287,
"delta": 0.0097,
"percent_delta": 0.5105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5,
"after": 8.027,
"delta": 3.527,
"percent_delta": 0.7838,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2223,
"delta": 0.0043,
"percent_delta": 0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.593,
"after": 1.0267,
"delta": 0.4337,
"percent_delta": 0.7314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.8022,
"delta": 0.8222,
"percent_delta": 0.839,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.4346,
"delta": 0.2246,
"percent_delta": 1.0695,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3197,
"delta": 0.0067,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.726,
"after": 1.3905,
"delta": 0.6645,
"percent_delta": 0.9153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 1.155,
"delta": 0.575,
"percent_delta": 0.9914,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.4385,
"delta": 0.0175,
"percent_delta": 0.0416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.392,
"after": 2.5641,
"delta": 1.1721,
"percent_delta": 0.842,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.5,
"after": 8.027,
"delta": 3.527,
"percent_delta": 0.7838,
"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": 7,
"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.4353,
"predicted_3B": 0.0287,
"predicted_AB": 8.027,
"predicted_AVG": 0.2245,
"predicted_BB": 1.0236,
"predicted_H": 1.8018,
"predicted_HBP": 0.344,
"predicted_HR": 0.4362,
"predicted_OBP": 0.3122,
"predicted_R": 1.3867,
"predicted_RBI": 1.1519,
"predicted_SLG": 0.4489,
"predicted_SO": 2.5718
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4353,
"after": 0.4353,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0287,
"after": 0.0287,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 8.027,
"after": 8.027,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2223,
"after": 0.2245,
"delta": 0.0022,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0267,
"after": 1.0236,
"delta": -0.0031,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8022,
"after": 1.8018,
"delta": -0.0004,
"percent_delta": -0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.344,
"after": 0.344,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4346,
"after": 0.4362,
"delta": 0.0016,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3197,
"after": 0.3122,
"delta": -0.0075,
"percent_delta": -0.0235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.3905,
"after": 1.3867,
"delta": -0.0038,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.155,
"after": 1.1519,
"delta": -0.0031,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4385,
"after": 0.4489,
"delta": 0.0104,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.5641,
"after": 2.5718,
"delta": 0.0077,
"percent_delta": 0.003,
"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.4385,
"after": 0.4489,
"delta": 0.0104,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3197,
"after": 0.3122,
"delta": -0.0075,
"percent_delta": -0.0235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=8.03), rates preserved: AVG=0.224 HR/AB=0.054",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4353,
"after": 0.0,
"delta": -0.4353,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0287,
"after": 0.0,
"delta": -0.0287,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 8.027,
"after": 8.0,
"delta": -0.027,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0236,
"after": 1.0,
"delta": -0.0236,
"percent_delta": -0.0231,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8018,
"after": 2.0,
"delta": 0.1982,
"percent_delta": 0.11,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.344,
"after": 0.0,
"delta": -0.344,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4362,
"after": 0.0,
"delta": -0.4362,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1519,
"after": 1.0,
"delta": -0.1519,
"percent_delta": -0.1319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.5718,
"after": 3.0,
"delta": 0.4282,
"percent_delta": 0.1665,
"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": 2.5718,
"after": 3.0,
"delta": 0.4282,
"percent_delta": 0.1665,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"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": "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": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_RBI": 1.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": 8.0,
"after": 8.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": 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": 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_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": 1,
"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": {
"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": 8.0,
"predicted_BB": 1.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": 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": 8.0,
"after": 8.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": 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_R",
"before": 1.3867,
"after": 1.0,
"delta": -0.3867,
"percent_delta": -0.2789,
"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": 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_R",
"before": 1.3867,
"after": 1.0,
"delta": -0.3867,
"percent_delta": -0.2789,
"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": 8.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.625,
"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": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2245,
"after": 0.25,
"delta": 0.0255,
"percent_delta": 0.1136,
"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": 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_OBP",
"before": 0.3122,
"after": 0.333,
"delta": 0.0208,
"percent_delta": 0.0666,
"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.4489,
"after": 0.625,
"delta": 0.1761,
"percent_delta": 0.3923,
"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.4489,
"after": 0.625,
"delta": 0.1761,
"percent_delta": 0.3923,
"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": 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": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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.2245,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3122,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4489,
"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": 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.2245,
"delta": -0.0255,
"percent_delta": -0.1021,
"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.3122,
"delta": -0.0208,
"percent_delta": -0.0625,
"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.625,
"after": 0.4489,
"delta": -0.1761,
"percent_delta": -0.2818,
"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_SLG",
"before": 0.625,
"after": 0.4489,
"delta": -0.1761,
"percent_delta": -0.2818,
"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.247,
"after": 0.0,
"delta": -0.247,
"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.5,
"after": 4.0,
"delta": -0.5,
"percent_delta": -0.1111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2245,
"delta": 0.0065,
"percent_delta": 0.0298,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.593,
"after": 0.0,
"delta": -0.593,
"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.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3122,
"delta": -0.0008,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.58,
"after": 0.0,
"delta": -0.58,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.4489,
"delta": 0.0279,
"percent_delta": 0.0663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.392,
"after": 3.0,
"delta": 1.608,
"percent_delta": 1.1552,
"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": 1.392,
"after": 3.0,
"delta": 1.608,
"percent_delta": 1.1552,
"direction": "boost",
"projection_effect": "worse",
"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.247 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 4.500 | - |
| predicted_AVG | 0.218 | - |
| predicted_BB | 0.593 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.313 | - |
| predicted_R | 0.726 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.421 | - |
| predicted_SO | 1.392 | - |
Final model 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.435 | 0.188 |
| predicted_3B | 0.029 | 0.010 |
| predicted_AB | 8.027 | 3.527 |
| predicted_AVG | 0.222 | 0.004 |
| predicted_BB | 1.027 | 0.434 |
| predicted_H | 1.802 | 0.822 |
| predicted_HBP | 0.344 | - |
| predicted_HR | 0.435 | 0.225 |
| predicted_OBP | 0.320 | 0.007 |
| predicted_R | 1.391 | 0.665 |
| predicted_RBI | 1.155 | 0.575 |
| predicted_SLG | 0.439 | 0.018 |
| predicted_SO | 2.564 | 1.172 |
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.435 | 0.000 |
| predicted_3B | 0.029 | 0.000 |
| predicted_AB | 8.027 | 0.000 |
| predicted_AVG | 0.225 | 0.002 |
| predicted_BB | 1.024 | -0.003 |
| predicted_H | 1.802 | -0.000 |
| predicted_HBP | 0.344 | 0.000 |
| predicted_HR | 0.436 | 0.002 |
| predicted_OBP | 0.312 | -0.008 |
| predicted_R | 1.387 | -0.004 |
| predicted_RBI | 1.152 | -0.003 |
| predicted_SLG | 0.449 | 0.010 |
| predicted_SO | 2.572 | 0.008 |
AB rounded to 8 (raw=8.03), rates preserved: AVG=0.224 HR/AB=0.054
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 3.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 1.000 | 1.000 |
| RBI | 1.000 | 0.000 |
| SO | 3.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 3.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.435 |
| predicted_3B | 0.000 | -0.029 |
| predicted_AB | 8.000 | -0.027 |
| predicted_AVG | 0.250 | 0.025 |
| predicted_BB | 1.000 | -0.024 |
| predicted_H | 2.000 | 0.198 |
| predicted_HR | 1.000 | 0.564 |
| predicted_OBP | 0.333 | 0.021 |
| predicted_R | 1.000 | -0.387 |
| predicted_RBI | 1.000 | -0.152 |
| predicted_SLG | 0.625 | 0.176 |
| predicted_SO | 3.000 | 0.428 |
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 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | -1.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 | 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 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 1.000 | 6.000 | 0.1500 | 0.2273 | 0.4500 | 0.1500 | 0.1000 | 0.2000 | 0.0500 | 0.3000 |
| last_10 | 0.20 | 7 | - | 40.000 | 13.000 | 5.000 | 0.000 | 2.000 | 9.000 | 9.000 | 6.000 | 8.000 | 0.3250 | 0.4255 | 0.6000 | 0.3250 | 0.0500 | 0.2250 | 0.1500 | 0.2000 |
| season | 0.60 | 63 | - | 1039.000 | 249.000 | 65.000 | 5.000 | 47.000 | 130.000 | 191.000 | 156.000 | 366.000 | 0.2397 | 0.3494 | 0.4475 | 0.2397 | 0.0452 | 0.1251 | 0.1501 | 0.3523 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6720 |
| predicted_3B | 0.0410 |
| predicted_AB | 12.4620 |
| predicted_AVG | 0.2276 |
| predicted_BB | 1.5720 |
| predicted_H | 2.8360 |
| predicted_HBP | 0.3440 |
| predicted_HR | 0.7170 |
| predicted_OBP | 0.3282 |
| predicted_R | 2.2260 |
| predicted_RBI | 1.8780 |
| predicted_SLG | 0.4606 |
| predicted_SO | 4.0380 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2470 | 0.6720 | 0.4353 | model_form_blend |
| predicted_3B | 0.0190 | 0.0410 | 0.0287 | model_form_blend |
| predicted_AB | 4.5000 | 12.4620 | 8.0270 | model_form_blend |
| predicted_AVG | 0.2180 | 0.2276 | 0.2223 | model_form_blend |
| predicted_BB | 0.5930 | 1.5720 | 1.0267 | model_form_blend |
| predicted_H | 0.9800 | 2.8360 | 1.8022 | model_form_blend |
| predicted_HBP | - | 0.3440 | 0.3440 | form_only |
| predicted_HR | 0.2100 | 0.7170 | 0.4346 | model_form_blend |
| predicted_OBP | 0.3130 | 0.3282 | 0.3197 | model_form_blend |
| predicted_R | 0.7260 | 2.2260 | 1.3905 | model_form_blend |
| predicted_RBI | 0.5800 | 1.8780 | 1.1550 | model_form_blend |
| predicted_SLG | 0.4210 | 0.4606 | 0.4385 | model_form_blend |
| predicted_SO | 1.3920 | 4.0380 | 2.5641 | 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 | 263 |
| Season rows before report date | 263 |
| Report year | 2026 |
| Profile rows used | 263 |
| 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.24 |
| 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 | 6 |
| Hitting_AVG | 0.167 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 3 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 4 |
| 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 | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 687263 |
| playerID | 687263 |
| playerName | Zach Neto |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 30.2 |
| sl_bb_percent | 11.8 |
| sl_woba | 0.344 |
| sl_xwoba | 0.322 |
| sl_xba | 0.21 |
| sl_xslg | 0.409 |
| sl_sweet_spot_percent | 36.6 |
| sl_barrel_batted_rate | 11.8 |
| sl_hard_hit_percent | 37.3 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 22.6 |
| sl_whiff_percent | 30.3 |
| 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.123 | 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.170 | 4.000 | 7.000 | Hitting_AB | 3.934 | 5.000 | 0.066 | -1.000 |
| predicted_AVG | 0.240 | 0.250 | 0.286 | Hitting_AVG | 0.245 | 0.800 | 0.005 | -0.550 |
| predicted_BB | 0.128 | 0.000 | 0.000 | Hitting_BB | 0.128 | 0.000 | -0.128 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.000 | 1.000 | 2.000 | Hitting_H | 0.963 | 4.000 | 0.037 | -3.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.140 | 1.000 | -0.140 | -1.000 |
| predicted_OBP | 0.294 | 0.250 | 0.286 | Hitting_OBP | 0.291 | 0.800 | -0.041 | -0.550 |
| predicted_R | 0.395 | 0.000 | 1.000 | Hitting_R | 0.395 | 4.000 | -0.395 | -4.000 |
| predicted_RBI | 0.580 | 0.000 | 1.000 | Hitting_RBI | 0.560 | 2.000 | -0.560 | -2.000 |
| predicted_SLG | 0.415 | 0.250 | 0.286 | Hitting_SLG | 0.383 | 1.400 | -0.133 | -1.150 |
| predicted_SO | 0.988 | 0.000 | 2.000 | Hitting_SO | 0.988 | 1.000 | -0.988 | -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_AVG: 0.2400 -> 0.2551 (boost 0.0151, better) |
| Biggest Deboost | predicted_SO: 0.9880 -> 0.0000 (deboost -0.9880, 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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 4.1700 -> 6.7589 (boost 2.5889, 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.2931 -> 0.2728 (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 | 7 | 3 | 4 | 2 | 5 | predicted_SO: 1.6440 -> 2.0000 (boost 0.3560, worse) | predicted_HR: 0.2772 -> 0.0000 (deboost -0.2772, worse) | AB rounded to 7 (raw=6.76), rates preserved: AVG=0.255 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8357 -> 1.0000 (boost 0.1643, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2551 -> 0.2860 (boost 0.0309, better) | predicted_SLG: 0.4045 -> 0.2860 (deboost -0.1185, 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: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4045 (boost 0.1185, better) | predicted_AVG: 0.2860 -> 0.2551 (deboost -0.0309, worse) | 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.123,
"predicted_3B": 0.0,
"predicted_AB": 4.17,
"predicted_AVG": 0.24,
"predicted_BB": 0.128,
"predicted_H": 1.0,
"predicted_HR": 0.16,
"predicted_OBP": 0.294,
"predicted_R": 0.395,
"predicted_RBI": 0.58,
"predicted_SLG": 0.415,
"predicted_SO": 0.988
},
"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.1773,
"predicted_3B": 0.0004,
"predicted_AB": 6.7589,
"predicted_AVG": 0.2502,
"predicted_BB": 0.1651,
"predicted_H": 1.7244,
"predicted_HBP": 0.217,
"predicted_HR": 0.2762,
"predicted_OBP": 0.2931,
"predicted_R": 0.838,
"predicted_RBI": 1.0235,
"predicted_SLG": 0.4148,
"predicted_SO": 1.6391
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.123,
"after": 0.1773,
"delta": 0.0543,
"percent_delta": 0.4415,
"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.17,
"after": 6.7589,
"delta": 2.5889,
"percent_delta": 0.6208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2502,
"delta": 0.0102,
"percent_delta": 0.0425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.128,
"after": 0.1651,
"delta": 0.0371,
"percent_delta": 0.2898,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.7244,
"delta": 0.7244,
"percent_delta": 0.7244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2762,
"delta": 0.1162,
"percent_delta": 0.7262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.294,
"after": 0.2931,
"delta": -0.0009,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.395,
"after": 0.838,
"delta": 0.443,
"percent_delta": 1.1215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 1.0235,
"delta": 0.4435,
"percent_delta": 0.7647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.415,
"after": 0.4148,
"delta": -0.0002,
"percent_delta": -0.0005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.988,
"after": 1.6391,
"delta": 0.6511,
"percent_delta": 0.659,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.17,
"after": 6.7589,
"delta": 2.5889,
"percent_delta": 0.6208,
"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.1773,
"predicted_3B": 0.0004,
"predicted_AB": 6.7589,
"predicted_AVG": 0.2551,
"predicted_BB": 0.1646,
"predicted_H": 1.7241,
"predicted_HBP": 0.217,
"predicted_HR": 0.2772,
"predicted_OBP": 0.2728,
"predicted_R": 0.8357,
"predicted_RBI": 1.0207,
"predicted_SLG": 0.4045,
"predicted_SO": 1.644
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1773,
"after": 0.1773,
"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": 6.7589,
"after": 6.7589,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2502,
"after": 0.2551,
"delta": 0.0049,
"percent_delta": 0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1651,
"after": 0.1646,
"delta": -0.0005,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7244,
"after": 1.7241,
"delta": -0.0003,
"percent_delta": -0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.217,
"after": 0.217,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2762,
"after": 0.2772,
"delta": 0.001,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2931,
"after": 0.2728,
"delta": -0.0203,
"percent_delta": -0.0693,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.838,
"after": 0.8357,
"delta": -0.0023,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0235,
"after": 1.0207,
"delta": -0.0028,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4148,
"after": 0.4045,
"delta": -0.0103,
"percent_delta": -0.0248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6391,
"after": 1.644,
"delta": 0.0049,
"percent_delta": 0.003,
"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.2931,
"after": 0.2728,
"delta": -0.0203,
"percent_delta": -0.0693,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.76), rates preserved: AVG=0.255 HR/AB=0.041",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1773,
"after": 0.0,
"delta": -0.1773,
"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": 6.7589,
"after": 7.0,
"delta": 0.2411,
"percent_delta": 0.0357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1646,
"after": 0.0,
"delta": -0.1646,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7241,
"after": 2.0,
"delta": 0.2759,
"percent_delta": 0.16,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.217,
"after": 0.0,
"delta": -0.217,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2772,
"after": 0.0,
"delta": -0.2772,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0207,
"after": 1.0,
"delta": -0.0207,
"percent_delta": -0.0203,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.644,
"after": 2.0,
"delta": 0.356,
"percent_delta": 0.2165,
"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": 1.644,
"after": 2.0,
"delta": 0.356,
"percent_delta": 0.2165,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2772,
"after": 0.0,
"delta": -0.2772,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.8357,
"after": 1.0,
"delta": 0.1643,
"percent_delta": 0.1966,
"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": 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_R",
"before": 0.8357,
"after": 1.0,
"delta": 0.1643,
"percent_delta": 0.1966,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2551,
"after": 0.286,
"delta": 0.0309,
"percent_delta": 0.1211,
"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": 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_OBP",
"before": 0.2728,
"after": 0.286,
"delta": 0.0132,
"percent_delta": 0.0484,
"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.4045,
"after": 0.286,
"delta": -0.1185,
"percent_delta": -0.293,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2551,
"after": 0.286,
"delta": 0.0309,
"percent_delta": 0.1211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4045,
"after": 0.286,
"delta": -0.1185,
"percent_delta": -0.293,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2551,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2728,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4045,
"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.286,
"after": 0.2551,
"delta": -0.0309,
"percent_delta": -0.1081,
"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.286,
"after": 0.2728,
"delta": -0.0132,
"percent_delta": -0.0462,
"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.286,
"after": 0.4045,
"delta": 0.1185,
"percent_delta": 0.4142,
"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.286,
"after": 0.4045,
"delta": 0.1185,
"percent_delta": 0.4142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2551,
"delta": -0.0309,
"percent_delta": -0.1081,
"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.123,
"after": 0.0,
"delta": -0.123,
"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.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.2551,
"delta": 0.0151,
"percent_delta": 0.0629,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.128,
"after": 0.0,
"delta": -0.128,
"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.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.294,
"after": 0.2728,
"delta": -0.0212,
"percent_delta": -0.0721,
"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.58,
"after": 0.0,
"delta": -0.58,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.415,
"after": 0.4045,
"delta": -0.0105,
"percent_delta": -0.0253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.988,
"after": 0.0,
"delta": -0.988,
"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.24,
"after": 0.2551,
"delta": 0.0151,
"percent_delta": 0.0629,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.988,
"after": 0.0,
"delta": -0.988,
"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.123 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.170 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.128 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.294 | - |
| predicted_R | 0.395 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.415 | - |
| predicted_SO | 0.988 | - |
Final model 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.054 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.759 | 2.589 |
| predicted_AVG | 0.250 | 0.010 |
| predicted_BB | 0.165 | 0.037 |
| predicted_H | 1.724 | 0.724 |
| predicted_HBP | 0.217 | - |
| predicted_HR | 0.276 | 0.116 |
| predicted_OBP | 0.293 | -0.001 |
| predicted_R | 0.838 | 0.443 |
| predicted_RBI | 1.024 | 0.444 |
| predicted_SLG | 0.415 | -0.000 |
| predicted_SO | 1.639 | 0.651 |
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.000 | 0.000 |
| predicted_AB | 6.759 | 0.000 |
| predicted_AVG | 0.255 | 0.005 |
| predicted_BB | 0.165 | -0.001 |
| predicted_H | 1.724 | -0.000 |
| predicted_HBP | 0.217 | 0.000 |
| predicted_HR | 0.277 | 0.001 |
| predicted_OBP | 0.273 | -0.020 |
| predicted_R | 0.836 | -0.002 |
| predicted_RBI | 1.021 | -0.003 |
| predicted_SLG | 0.405 | -0.010 |
| predicted_SO | 1.644 | 0.005 |
AB rounded to 7 (raw=6.76), rates preserved: AVG=0.255 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 0.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.177 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.241 |
| predicted_AVG | 0.286 | 0.031 |
| predicted_BB | 0.000 | -0.165 |
| predicted_H | 2.000 | 0.276 |
| predicted_HR | 0.000 | -0.277 |
| predicted_OBP | 0.286 | 0.013 |
| predicted_R | 1.000 | 0.164 |
| predicted_RBI | 1.000 | -0.021 |
| predicted_SLG | 0.286 | -0.119 |
| predicted_SO | 2.000 | 0.356 |
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 | -3.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | -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 | 1.000 | 3.000 | 4.000 | 0.000 | 5.000 | 0.3333 | 0.3333 | 0.5000 | 0.3333 | 0.0556 | 0.1667 | 0.0000 | 0.2778 |
| last_10 | 0.20 | 10 | - | 40.000 | 10.000 | 1.000 | 0.000 | 2.000 | 8.000 | 7.000 | 0.000 | 8.000 | 0.2500 | 0.2500 | 0.4250 | 0.2500 | 0.0500 | 0.2000 | 0.0000 | 0.2000 |
| season | 0.60 | 66 | - | 956.000 | 234.000 | 30.000 | 0.000 | 34.000 | 136.000 | 96.000 | 31.000 | 240.000 | 0.2448 | 0.2910 | 0.3828 | 0.2448 | 0.0356 | 0.1423 | 0.0324 | 0.2510 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2460 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.0310 |
| predicted_AVG | 0.2632 |
| predicted_BB | 0.2120 |
| predicted_H | 2.6400 |
| predicted_HBP | 0.2170 |
| predicted_HR | 0.4230 |
| predicted_OBP | 0.2919 |
| predicted_R | 1.3980 |
| predicted_RBI | 1.5840 |
| predicted_SLG | 0.4145 |
| predicted_SO | 2.4620 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1230 | 0.2460 | 0.1773 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.1700 | 10.0310 | 6.7589 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2632 | 0.2502 | model_form_blend |
| predicted_BB | 0.1280 | 0.2120 | 0.1651 | model_form_blend |
| predicted_H | 1.0000 | 2.6400 | 1.7244 | model_form_blend |
| predicted_HBP | - | 0.2170 | 0.2170 | form_only |
| predicted_HR | 0.1600 | 0.4230 | 0.2762 | model_form_blend |
| predicted_OBP | 0.2940 | 0.2919 | 0.2931 | model_form_blend |
| predicted_R | 0.3950 | 1.3980 | 0.8380 | model_form_blend |
| predicted_RBI | 0.5800 | 1.5840 | 1.0235 | model_form_blend |
| predicted_SLG | 0.4150 | 0.4145 | 0.4148 | model_form_blend |
| predicted_SO | 0.9880 | 2.4620 | 1.6391 | 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 | 243 |
| 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.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 | 5 |
| Hitting_AVG | 0.8 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 4 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 4 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 7 |
| 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 | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 666176 |
| playerID | 666176 |
| playerName | Jo Adell |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.5 |
| sl_bb_percent | 2.6 |
| sl_woba | 0.298 |
| sl_xwoba | 0.334 |
| sl_xba | 0.27 |
| sl_xslg | 0.461 |
| sl_sweet_spot_percent | 32.6 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 45.6 |
| sl_exit_velocity_avg | 90.9 |
| sl_launch_angle_avg | 18.5 |
| sl_whiff_percent | 26.0 |
| sl_swing_percent | 55.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.125 | 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.875 | 3.000 | 3.000 | Hitting_AB | 2.556 | 2.000 | 0.444 | 1.000 |
| predicted_AVG | 0.295 | 0.000 | 0.333 | Hitting_AVG | 0.348 | 0.500 | -0.348 | -0.500 |
| predicted_BB | 0.375 | 1.000 | 0.000 | Hitting_BB | 0.333 | 3.000 | 0.667 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_H | 0.760 | 0.000 | 1.000 | Hitting_H | 0.889 | 1.000 | -0.889 | -1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.369 | 0.250 | 0.333 | Hitting_OBP | 0.444 | 0.800 | -0.194 | -0.550 |
| predicted_R | 0.500 | 0.000 | 1.000 | Hitting_R | 0.444 | 3.000 | -0.444 | -3.000 |
| predicted_RBI | 0.320 | 0.000 | 0.000 | Hitting_RBI | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.413 | 0.000 | 0.333 | Hitting_SLG | 0.391 | 0.500 | -0.391 | -0.500 |
| predicted_SO | 0.250 | 2.000 | 0.000 | Hitting_SO | 0.222 | 0.000 | 1.778 | 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.2500 -> 2.0000 (boost 1.7500, worse) |
| Biggest Deboost | predicted_H: 0.7600 -> 0.0000 (deboost -0.7600, 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 | 5 | 1 | predicted_AB: 2.8750 -> 3.0243 (boost 0.1493, 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.4186 -> 0.3977 (deboost -0.0209, 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.8534 -> 1.0000 (boost 0.1466, better) | predicted_BB: 0.3891 -> 0.0000 (deboost -0.3891, worse) | AB rounded to 3 (raw=3.02), rates preserved: AVG=0.282 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5326 -> 1.0000 (boost 0.4674, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2822 -> 0.3330 (boost 0.0508, better) | predicted_SLG: 0.3977 -> 0.3330 (deboost -0.0647, 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: 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 | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.3977 (boost 0.0647, better) | predicted_AVG: 0.3330 -> 0.2822 (deboost -0.0508, 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.125,
"predicted_3B": 0.0,
"predicted_AB": 2.875,
"predicted_AVG": 0.295,
"predicted_BB": 0.375,
"predicted_H": 0.76,
"predicted_HR": 0.07,
"predicted_OBP": 0.369,
"predicted_R": 0.5,
"predicted_RBI": 0.32,
"predicted_SLG": 0.413,
"predicted_SO": 0.25
},
"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.1423,
"predicted_3B": 0.0021,
"predicted_AB": 3.0243,
"predicted_AVG": 0.302,
"predicted_BB": 0.3903,
"predicted_H": 0.8536,
"predicted_HBP": 0.016,
"predicted_HR": 0.0674,
"predicted_OBP": 0.3767,
"predicted_R": 0.534,
"predicted_RBI": 0.3241,
"predicted_SLG": 0.4186,
"predicted_SO": 0.3295
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.125,
"after": 0.1423,
"delta": 0.0173,
"percent_delta": 0.1384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0021,
"delta": 0.0021,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.875,
"after": 3.0243,
"delta": 0.1493,
"percent_delta": 0.0519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.295,
"after": 0.302,
"delta": 0.007,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.375,
"after": 0.3903,
"delta": 0.0153,
"percent_delta": 0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.76,
"after": 0.8536,
"delta": 0.0936,
"percent_delta": 0.1232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0674,
"delta": -0.0026,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.369,
"after": 0.3767,
"delta": 0.0077,
"percent_delta": 0.0209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.534,
"delta": 0.034,
"percent_delta": 0.068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.3241,
"delta": 0.0041,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.413,
"after": 0.4186,
"delta": 0.0056,
"percent_delta": 0.0136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.25,
"after": 0.3295,
"delta": 0.0795,
"percent_delta": 0.318,
"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": 2.875,
"after": 3.0243,
"delta": 0.1493,
"percent_delta": 0.0519,
"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": 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.1423,
"predicted_3B": 0.0021,
"predicted_AB": 3.0243,
"predicted_AVG": 0.2822,
"predicted_BB": 0.3891,
"predicted_H": 0.8534,
"predicted_HBP": 0.016,
"predicted_HR": 0.0676,
"predicted_OBP": 0.364,
"predicted_R": 0.5326,
"predicted_RBI": 0.3232,
"predicted_SLG": 0.3977,
"predicted_SO": 0.3305
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1423,
"after": 0.1423,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0021,
"after": 0.0021,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0243,
"after": 3.0243,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.302,
"after": 0.2822,
"delta": -0.0198,
"percent_delta": -0.0656,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3903,
"after": 0.3891,
"delta": -0.0012,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8536,
"after": 0.8534,
"delta": -0.0002,
"percent_delta": -0.0002,
"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.0674,
"after": 0.0676,
"delta": 0.0002,
"percent_delta": 0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3767,
"after": 0.364,
"delta": -0.0127,
"percent_delta": -0.0337,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.534,
"after": 0.5326,
"delta": -0.0014,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3241,
"after": 0.3232,
"delta": -0.0009,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4186,
"after": 0.3977,
"delta": -0.0209,
"percent_delta": -0.0499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3295,
"after": 0.3305,
"delta": 0.001,
"percent_delta": 0.003,
"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.4186,
"after": 0.3977,
"delta": -0.0209,
"percent_delta": -0.0499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.02), rates preserved: AVG=0.282 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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1423,
"after": 0.0,
"delta": -0.1423,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0021,
"after": 0.0,
"delta": -0.0021,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0243,
"after": 3.0,
"delta": -0.0243,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3891,
"after": 0.0,
"delta": -0.3891,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8534,
"after": 1.0,
"delta": 0.1466,
"percent_delta": 0.1718,
"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.0676,
"after": 0.0,
"delta": -0.0676,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3232,
"after": 0.0,
"delta": -0.3232,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3305,
"after": 0.0,
"delta": -0.3305,
"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.8534,
"after": 1.0,
"delta": 0.1466,
"percent_delta": 0.1718,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3891,
"after": 0.0,
"delta": -0.3891,
"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.5326,
"after": 1.0,
"delta": 0.4674,
"percent_delta": 0.8776,
"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.5326,
"after": 1.0,
"delta": 0.4674,
"percent_delta": 0.8776,
"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.2822,
"after": 0.333,
"delta": 0.0508,
"percent_delta": 0.18,
"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.364,
"after": 0.333,
"delta": -0.031,
"percent_delta": -0.0852,
"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.3977,
"after": 0.333,
"delta": -0.0647,
"percent_delta": -0.1627,
"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.2822,
"after": 0.333,
"delta": 0.0508,
"percent_delta": 0.18,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3977,
"after": 0.333,
"delta": -0.0647,
"percent_delta": -0.1627,
"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": 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": 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": 2.0,
"delta": 2.0,
"percent_delta": null,
"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": 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.2822,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.364,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3977,
"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.2822,
"delta": -0.0508,
"percent_delta": -0.1526,
"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.364,
"delta": 0.031,
"percent_delta": 0.0932,
"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.3977,
"delta": 0.0647,
"percent_delta": 0.1944,
"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.3977,
"delta": 0.0647,
"percent_delta": 0.1944,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2822,
"delta": -0.0508,
"percent_delta": -0.1526,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.875,
"after": 3.0,
"delta": 0.125,
"percent_delta": 0.0435,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.295,
"after": 0.2822,
"delta": -0.0128,
"percent_delta": -0.0434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.375,
"after": 1.0,
"delta": 0.625,
"percent_delta": 1.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.76,
"after": 0.0,
"delta": -0.76,
"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.369,
"after": 0.364,
"delta": -0.005,
"percent_delta": -0.0136,
"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.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.413,
"after": 0.3977,
"delta": -0.0153,
"percent_delta": -0.037,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.25,
"after": 2.0,
"delta": 1.75,
"percent_delta": 7.0,
"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.25,
"after": 2.0,
"delta": 1.75,
"percent_delta": 7.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.76,
"after": 0.0,
"delta": -0.76,
"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.000 | - |
| predicted_AB | 2.875 | - |
| predicted_AVG | 0.295 | - |
| predicted_BB | 0.375 | - |
| predicted_H | 0.760 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.369 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.413 | - |
| predicted_SO | 0.250 | - |
Final model 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.142 | 0.017 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.024 | 0.149 |
| predicted_AVG | 0.302 | 0.007 |
| predicted_BB | 0.390 | 0.015 |
| predicted_H | 0.854 | 0.094 |
| predicted_HBP | 0.016 | - |
| predicted_HR | 0.067 | -0.003 |
| predicted_OBP | 0.377 | 0.008 |
| predicted_R | 0.534 | 0.034 |
| predicted_RBI | 0.324 | 0.004 |
| predicted_SLG | 0.419 | 0.006 |
| predicted_SO | 0.330 | 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.142 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.024 | 0.000 |
| predicted_AVG | 0.282 | -0.020 |
| predicted_BB | 0.389 | -0.001 |
| predicted_H | 0.853 | -0.000 |
| predicted_HBP | 0.016 | 0.000 |
| predicted_HR | 0.068 | 0.000 |
| predicted_OBP | 0.364 | -0.013 |
| predicted_R | 0.533 | -0.001 |
| predicted_RBI | 0.323 | -0.001 |
| predicted_SLG | 0.398 | -0.021 |
| predicted_SO | 0.331 | 0.001 |
AB rounded to 3 (raw=3.02), rates preserved: AVG=0.282 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 | 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.142 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.024 |
| predicted_AVG | 0.333 | 0.051 |
| predicted_BB | 0.000 | -0.389 |
| predicted_H | 1.000 | 0.147 |
| predicted_HR | 0.000 | -0.068 |
| predicted_OBP | 0.333 | -0.031 |
| predicted_R | 1.000 | 0.467 |
| predicted_RBI | 0.000 | -0.323 |
| predicted_SLG | 0.333 | -0.065 |
| predicted_SO | 0.000 | -0.331 |
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 | -1.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 | - | 14.000 | 6.000 | 1.000 | 0.000 | 0.000 | 1.000 | 4.000 | 3.000 | 1.000 | 0.4286 | 0.5294 | 0.5000 | 0.4286 | 0.0000 | 0.0714 | 0.2143 | 0.0714 |
| last_10 | 0.20 | 8 | - | 23.000 | 8.000 | 1.000 | 0.000 | 0.000 | 1.000 | 4.000 | 3.000 | 2.000 | 0.3478 | 0.4231 | 0.3913 | 0.3478 | 0.0000 | 0.0435 | 0.1304 | 0.0870 |
| season | 0.60 | 8 | - | 23.000 | 8.000 | 1.000 | 0.000 | 0.000 | 1.000 | 4.000 | 3.000 | 2.000 | 0.3478 | 0.4231 | 0.3913 | 0.3478 | 0.0000 | 0.0435 | 0.1304 | 0.0870 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1840 |
| predicted_3B | 0.0070 |
| predicted_AB | 3.3840 |
| predicted_AVG | 0.3190 |
| predicted_BB | 0.4270 |
| predicted_H | 1.0790 |
| predicted_HBP | 0.0160 |
| predicted_HR | 0.0610 |
| predicted_OBP | 0.3952 |
| predicted_R | 0.6160 |
| predicted_RBI | 0.3340 |
| predicted_SLG | 0.4320 |
| predicted_SO | 0.5210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1250 | 0.1840 | 0.1423 | model_form_blend |
| predicted_3B | 0.0000 | 0.0070 | 0.0021 | model_form_blend |
| predicted_AB | 2.8750 | 3.3840 | 3.0243 | model_form_blend |
| predicted_AVG | 0.2950 | 0.3190 | 0.3020 | model_form_blend |
| predicted_BB | 0.3750 | 0.4270 | 0.3903 | model_form_blend |
| predicted_H | 0.7600 | 1.0790 | 0.8536 | model_form_blend |
| predicted_HBP | - | 0.0160 | 0.0160 | form_only |
| predicted_HR | 0.0700 | 0.0610 | 0.0674 | model_form_blend |
| predicted_OBP | 0.3690 | 0.3952 | 0.3767 | model_form_blend |
| predicted_R | 0.5000 | 0.6160 | 0.5340 | model_form_blend |
| predicted_RBI | 0.3200 | 0.3340 | 0.3241 | model_form_blend |
| predicted_SLG | 0.4130 | 0.4320 | 0.4186 | model_form_blend |
| predicted_SO | 0.2500 | 0.5210 | 0.3295 | 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 | 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 | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.348 |
| 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.5 |
| Hitting_BB | 3 |
| 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 | 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 | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 663611 |
| playerID | 663611 |
| playerName | Nick Madrigal |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 7.4 |
| sl_bb_percent | 11.1 |
| sl_woba | 0.384 |
| sl_xwoba | 0.332 |
| sl_xba | 0.276 |
| sl_xslg | 0.339 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 28.6 |
| sl_exit_velocity_avg | 88.2 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 8.6 |
| sl_swing_percent | 54.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.117 | 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 | 3.398 | 3.000 | 5.000 | Hitting_AB | 3.346 | 3.000 | -0.346 | 0.000 |
| predicted_AVG | 0.226 | 0.333 | 0.200 | Hitting_AVG | 0.221 | 0.000 | 0.113 | 0.333 |
| predicted_BB | 0.383 | 1.000 | 0.000 | Hitting_BB | 0.377 | 0.000 | 0.623 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.630 | 1.000 | 1.000 | Hitting_H | 0.738 | 0.000 | 0.262 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_OBP | 0.269 | 0.500 | 0.200 | Hitting_OBP | 0.313 | 0.000 | 0.187 | 0.500 |
| predicted_R | 0.422 | 0.000 | 1.000 | Hitting_R | 0.415 | 0.000 | -0.415 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 1.000 | Hitting_RBI | 0.369 | 0.000 | -0.369 | 0.000 |
| predicted_SLG | 0.338 | 0.333 | 0.200 | Hitting_SLG | 0.290 | 0.000 | 0.044 | 0.333 |
| predicted_SO | 0.844 | 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 | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.3830 -> 1.0000 (boost 0.6170, better) |
| Biggest Deboost | predicted_R: 0.4220 -> 0.0000 (deboost -0.4220, 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 | 9 | 7 | 2 | 6 | 3 | predicted_AB: 3.3980 -> 5.4674 (boost 2.0694, better) | predicted_AVG: 0.2260 -> 0.2157 (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.2157 -> 0.1962 (deboost -0.0195, 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_RBI: 0.5825 -> 1.0000 (boost 0.4175, better) | predicted_BB: 0.4894 -> 0.0000 (deboost -0.4894, worse) | AB rounded to 5 (raw=5.47), rates preserved: AVG=0.196 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6655 -> 1.0000 (boost 0.3345, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3111 -> 0.2000 (deboost -0.1111, 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: 5.0000 -> 3.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2000 -> 0.3111 (boost 0.1111, better) | - | 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.117,
"predicted_3B": 0.0,
"predicted_AB": 3.398,
"predicted_AVG": 0.226,
"predicted_BB": 0.383,
"predicted_H": 0.63,
"predicted_HR": 0.09,
"predicted_OBP": 0.269,
"predicted_R": 0.422,
"predicted_RBI": 0.35,
"predicted_SLG": 0.338,
"predicted_SO": 0.844
},
"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.2171,
"predicted_3B": 0.0009,
"predicted_AB": 5.4674,
"predicted_AVG": 0.2157,
"predicted_BB": 0.4909,
"predicted_H": 1.073,
"predicted_HBP": 0.143,
"predicted_HR": 0.1359,
"predicted_OBP": 0.2676,
"predicted_R": 0.6673,
"predicted_RBI": 0.5841,
"predicted_SLG": 0.329,
"predicted_SO": 1.3824
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.117,
"after": 0.2171,
"delta": 0.1001,
"percent_delta": 0.8556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.398,
"after": 5.4674,
"delta": 2.0694,
"percent_delta": 0.609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2157,
"delta": -0.0103,
"percent_delta": -0.0456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.383,
"after": 0.4909,
"delta": 0.1079,
"percent_delta": 0.2817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.63,
"after": 1.073,
"delta": 0.443,
"percent_delta": 0.7032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1359,
"delta": 0.0459,
"percent_delta": 0.51,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.269,
"after": 0.2676,
"delta": -0.0014,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.422,
"after": 0.6673,
"delta": 0.2453,
"percent_delta": 0.5813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.5841,
"delta": 0.2341,
"percent_delta": 0.6689,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.338,
"after": 0.329,
"delta": -0.009,
"percent_delta": -0.0266,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.844,
"after": 1.3824,
"delta": 0.5384,
"percent_delta": 0.6379,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 7,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.398,
"after": 5.4674,
"delta": 2.0694,
"percent_delta": 0.609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2157,
"delta": -0.0103,
"percent_delta": -0.0456,
"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": 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.2171,
"predicted_3B": 0.0009,
"predicted_AB": 5.4674,
"predicted_AVG": 0.1962,
"predicted_BB": 0.4894,
"predicted_H": 1.0728,
"predicted_HBP": 0.143,
"predicted_HR": 0.1364,
"predicted_OBP": 0.2623,
"predicted_R": 0.6655,
"predicted_RBI": 0.5825,
"predicted_SLG": 0.3111,
"predicted_SO": 1.3865
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2171,
"after": 0.2171,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.4674,
"after": 5.4674,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2157,
"after": 0.1962,
"delta": -0.0195,
"percent_delta": -0.0904,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4909,
"after": 0.4894,
"delta": -0.0015,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.073,
"after": 1.0728,
"delta": -0.0002,
"percent_delta": -0.0002,
"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.1359,
"after": 0.1364,
"delta": 0.0005,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2676,
"after": 0.2623,
"delta": -0.0053,
"percent_delta": -0.0198,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6673,
"after": 0.6655,
"delta": -0.0018,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5841,
"after": 0.5825,
"delta": -0.0016,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.329,
"after": 0.3111,
"delta": -0.0179,
"percent_delta": -0.0544,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3824,
"after": 1.3865,
"delta": 0.0041,
"percent_delta": 0.003,
"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.2157,
"after": 0.1962,
"delta": -0.0195,
"percent_delta": -0.0904,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.47), rates preserved: AVG=0.196 HR/AB=0.025",
"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.2171,
"after": 0.0,
"delta": -0.2171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.4674,
"after": 5.0,
"delta": -0.4674,
"percent_delta": -0.0855,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4894,
"after": 0.0,
"delta": -0.4894,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0728,
"after": 1.0,
"delta": -0.0728,
"percent_delta": -0.0679,
"direction": "deboost",
"projection_effect": "worse",
"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.1364,
"after": 0.0,
"delta": -0.1364,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5825,
"after": 1.0,
"delta": 0.4175,
"percent_delta": 0.7167,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3865,
"after": 1.0,
"delta": -0.3865,
"percent_delta": -0.2788,
"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_RBI",
"before": 0.5825,
"after": 1.0,
"delta": 0.4175,
"percent_delta": 0.7167,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4894,
"after": 0.0,
"delta": -0.4894,
"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.6655,
"after": 1.0,
"delta": 0.3345,
"percent_delta": 0.5026,
"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.6655,
"after": 1.0,
"delta": 0.3345,
"percent_delta": 0.5026,
"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.1962,
"after": 0.2,
"delta": 0.0038,
"percent_delta": 0.0194,
"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.2623,
"after": 0.2,
"delta": -0.0623,
"percent_delta": -0.2375,
"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.3111,
"after": 0.2,
"delta": -0.1111,
"percent_delta": -0.3571,
"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.3111,
"after": 0.2,
"delta": -0.1111,
"percent_delta": -0.3571,
"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": 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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 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": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"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.1962,
"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.2623,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3111,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1962,
"delta": -0.0038,
"percent_delta": -0.0189,
"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.2,
"after": 0.2623,
"delta": 0.0623,
"percent_delta": 0.3113,
"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.3111,
"delta": 0.1111,
"percent_delta": 0.5554,
"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.2,
"after": 0.3111,
"delta": 0.1111,
"percent_delta": 0.5554,
"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.117,
"after": 0.0,
"delta": -0.117,
"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.398,
"after": 3.0,
"delta": -0.398,
"percent_delta": -0.1171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.1962,
"delta": -0.0298,
"percent_delta": -0.1319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.383,
"after": 1.0,
"delta": 0.617,
"percent_delta": 1.611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.63,
"after": 1.0,
"delta": 0.37,
"percent_delta": 0.5873,
"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.269,
"after": 0.2623,
"delta": -0.0067,
"percent_delta": -0.0249,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.422,
"after": 0.0,
"delta": -0.422,
"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.338,
"after": 0.3111,
"delta": -0.0269,
"percent_delta": -0.0796,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.844,
"after": 1.0,
"delta": 0.156,
"percent_delta": 0.1848,
"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.383,
"after": 1.0,
"delta": 0.617,
"percent_delta": 1.611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.422,
"after": 0.0,
"delta": -0.422,
"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.117 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.398 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.383 | - |
| predicted_H | 0.630 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.269 | - |
| predicted_R | 0.422 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.338 | - |
| predicted_SO | 0.844 | - |
Final model 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.217 | 0.100 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.467 | 2.069 |
| predicted_AVG | 0.216 | -0.010 |
| predicted_BB | 0.491 | 0.108 |
| predicted_H | 1.073 | 0.443 |
| predicted_HBP | 0.143 | - |
| predicted_HR | 0.136 | 0.046 |
| predicted_OBP | 0.268 | -0.001 |
| predicted_R | 0.667 | 0.245 |
| predicted_RBI | 0.584 | 0.234 |
| predicted_SLG | 0.329 | -0.009 |
| predicted_SO | 1.382 | 0.538 |
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.217 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.467 | 0.000 |
| predicted_AVG | 0.196 | -0.019 |
| predicted_BB | 0.489 | -0.002 |
| predicted_H | 1.073 | -0.000 |
| predicted_HBP | 0.143 | 0.000 |
| predicted_HR | 0.136 | 0.001 |
| predicted_OBP | 0.262 | -0.005 |
| predicted_R | 0.665 | -0.002 |
| predicted_RBI | 0.583 | -0.002 |
| predicted_SLG | 0.311 | -0.018 |
| predicted_SO | 1.387 | 0.004 |
AB rounded to 5 (raw=5.47), rates preserved: AVG=0.196 HR/AB=0.025
| 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.217 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.467 |
| predicted_AVG | 0.200 | 0.004 |
| predicted_BB | 0.000 | -0.489 |
| predicted_H | 1.000 | -0.073 |
| predicted_HR | 0.000 | -0.136 |
| predicted_OBP | 0.200 | -0.062 |
| predicted_R | 1.000 | 0.335 |
| predicted_RBI | 1.000 | 0.417 |
| predicted_SLG | 0.200 | -0.111 |
| predicted_SO | 1.000 | -0.387 |
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 | 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 | 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 | 3.000 | 1.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 6.000 | 0.1667 | 0.1667 | 0.3889 | 0.1667 | 0.0556 | 0.1111 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 8 | - | 34.000 | 5.000 | 2.000 | 0.000 | 1.000 | 3.000 | 4.000 | 1.000 | 6.000 | 0.1471 | 0.1714 | 0.2941 | 0.1471 | 0.0294 | 0.0882 | 0.0294 | 0.1765 |
| season | 0.60 | 40 | - | 435.000 | 96.000 | 15.000 | 0.000 | 5.000 | 48.000 | 54.000 | 49.000 | 108.000 | 0.2207 | 0.3134 | 0.2897 | 0.2207 | 0.0115 | 0.1103 | 0.1126 | 0.2483 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3480 |
| predicted_3B | 0.0020 |
| predicted_AB | 8.1720 |
| predicted_AVG | 0.2022 |
| predicted_BB | 0.6320 |
| predicted_H | 1.6520 |
| predicted_HBP | 0.1430 |
| predicted_HR | 0.1960 |
| predicted_OBP | 0.2658 |
| predicted_R | 0.9880 |
| predicted_RBI | 0.8900 |
| predicted_SLG | 0.3173 |
| predicted_SO | 2.0860 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1170 | 0.3480 | 0.2171 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.3980 | 8.1720 | 5.4674 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2022 | 0.2157 | model_form_blend |
| predicted_BB | 0.3830 | 0.6320 | 0.4909 | model_form_blend |
| predicted_H | 0.6300 | 1.6520 | 1.0730 | model_form_blend |
| predicted_HBP | - | 0.1430 | 0.1430 | form_only |
| predicted_HR | 0.0900 | 0.1960 | 0.1359 | model_form_blend |
| predicted_OBP | 0.2690 | 0.2658 | 0.2676 | model_form_blend |
| predicted_R | 0.4220 | 0.9880 | 0.6673 | model_form_blend |
| predicted_RBI | 0.3500 | 0.8900 | 0.5841 | model_form_blend |
| predicted_SLG | 0.3380 | 0.3173 | 0.3290 | model_form_blend |
| predicted_SO | 0.8440 | 2.0860 | 1.3824 | 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 | 130 |
| Season rows before report date | 130 |
| Report year | 2026 |
| Profile rows used | 128 |
| 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.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 | 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 | C |
| gameID | 20260606_LAA@LAD |
| 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-06 |
| sl_k_percent | 23.8 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.256 |
| sl_xwoba | 0.276 |
| sl_xba | 0.189 |
| sl_xslg | 0.326 |
| sl_sweet_spot_percent | 27.1 |
| sl_barrel_batted_rate | 11.5 |
| sl_hard_hit_percent | 36.5 |
| sl_exit_velocity_avg | 86.5 |
| sl_launch_angle_avg | 16.6 |
| sl_whiff_percent | 29.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.259 | 0.000 | 0.000 | Hitting_2B | 0.250 | 0.000 | -0.250 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.852 | 4.000 | 5.000 | Hitting_AB | 3.714 | 3.000 | 0.286 | 1.000 |
| predicted_AVG | 0.240 | 0.000 | 0.200 | Hitting_AVG | 0.250 | 0.000 | -0.250 | 0.000 |
| predicted_BB | 0.185 | 0.000 | 0.000 | Hitting_BB | 0.179 | 0.000 | -0.179 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.770 | 0.000 | 1.000 | Hitting_H | 0.929 | 0.000 | -0.929 | 0.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.291 | 0.000 | 0.200 | Hitting_OBP | 0.284 | 0.000 | -0.284 | 0.000 |
| predicted_R | 0.630 | 0.000 | 1.000 | Hitting_R | 0.643 | 0.000 | -0.643 | 0.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.036 | 0.000 | -0.036 | 0.000 |
| predicted_SLG | 0.355 | 0.000 | 0.200 | Hitting_SLG | 0.317 | 0.000 | -0.317 | 0.000 |
| predicted_SO | 0.926 | 2.000 | 1.000 | Hitting_SO | 0.893 | 0.000 | 1.107 | 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_SO: 0.9260 -> 2.0000 (boost 1.0740, worse) |
| Biggest Deboost | predicted_H: 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 | 5 | 1 | 4 | 2 | predicted_AB: 3.8520 -> 4.8382 (boost 0.9862, better) | predicted_SLG: 0.3550 -> 0.3461 (deboost -0.0089, 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.2903 -> 0.2623 (deboost -0.0280, 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_AB: 4.8382 -> 5.0000 (boost 0.1618, better) | predicted_2B: 0.3058 -> 0.0000 (deboost -0.3058, worse) | AB rounded to 5 (raw=4.84), rates preserved: AVG=0.225 HR/AB=0.013 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7931 -> 1.0000 (boost 0.2069, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3271 -> 0.2000 (deboost -0.1271, 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_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.3271 (boost 0.1271, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "622268",
"player_name": "Donovan Walton",
"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.259,
"predicted_3B": 0.0,
"predicted_AB": 3.852,
"predicted_AVG": 0.24,
"predicted_BB": 0.185,
"predicted_H": 0.77,
"predicted_HR": 0.07,
"predicted_OBP": 0.291,
"predicted_R": 0.63,
"predicted_RBI": 0.27,
"predicted_SLG": 0.355,
"predicted_SO": 0.926
},
"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.3058,
"predicted_3B": 0.0019,
"predicted_AB": 4.8382,
"predicted_AVG": 0.2435,
"predicted_BB": 0.2446,
"predicted_H": 1.0892,
"predicted_HBP": 0.013,
"predicted_HR": 0.0611,
"predicted_OBP": 0.2903,
"predicted_R": 0.7952,
"predicted_RBI": 0.2545,
"predicted_SLG": 0.3461,
"predicted_SO": 1.0835
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.259,
"after": 0.3058,
"delta": 0.0468,
"percent_delta": 0.1807,
"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.852,
"after": 4.8382,
"delta": 0.9862,
"percent_delta": 0.256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2435,
"delta": 0.0035,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.185,
"after": 0.2446,
"delta": 0.0596,
"percent_delta": 0.3222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.0892,
"delta": 0.3192,
"percent_delta": 0.4145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0611,
"delta": -0.0089,
"percent_delta": -0.1271,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.291,
"after": 0.2903,
"delta": -0.0007,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.63,
"after": 0.7952,
"delta": 0.1652,
"percent_delta": 0.2622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2545,
"delta": -0.0155,
"percent_delta": -0.0574,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3461,
"delta": -0.0089,
"percent_delta": -0.0251,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.926,
"after": 1.0835,
"delta": 0.1575,
"percent_delta": 0.1701,
"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_AB",
"before": 3.852,
"after": 4.8382,
"delta": 0.9862,
"percent_delta": 0.256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3461,
"delta": -0.0089,
"percent_delta": -0.0251,
"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": 12
}
},
{
"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.3058,
"predicted_3B": 0.0019,
"predicted_AB": 4.8382,
"predicted_AVG": 0.2251,
"predicted_BB": 0.2439,
"predicted_H": 1.089,
"predicted_HBP": 0.013,
"predicted_HR": 0.0613,
"predicted_OBP": 0.2623,
"predicted_R": 0.7931,
"predicted_RBI": 0.2538,
"predicted_SLG": 0.3271,
"predicted_SO": 1.0868
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3058,
"after": 0.3058,
"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": 4.8382,
"after": 4.8382,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2435,
"after": 0.2251,
"delta": -0.0184,
"percent_delta": -0.0756,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2446,
"after": 0.2439,
"delta": -0.0007,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0892,
"after": 1.089,
"delta": -0.0002,
"percent_delta": -0.0002,
"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.0611,
"after": 0.0613,
"delta": 0.0002,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2903,
"after": 0.2623,
"delta": -0.028,
"percent_delta": -0.0965,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7952,
"after": 0.7931,
"delta": -0.0021,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2545,
"after": 0.2538,
"delta": -0.0007,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3461,
"after": 0.3271,
"delta": -0.019,
"percent_delta": -0.0549,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0835,
"after": 1.0868,
"delta": 0.0033,
"percent_delta": 0.003,
"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.2903,
"after": 0.2623,
"delta": -0.028,
"percent_delta": -0.0965,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.84), rates preserved: AVG=0.225 HR/AB=0.013",
"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.3058,
"after": 0.0,
"delta": -0.3058,
"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": 4.8382,
"after": 5.0,
"delta": 0.1618,
"percent_delta": 0.0334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2439,
"after": 0.0,
"delta": -0.2439,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.089,
"after": 1.0,
"delta": -0.089,
"percent_delta": -0.0817,
"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.0613,
"after": 0.0,
"delta": -0.0613,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2538,
"after": 0.0,
"delta": -0.2538,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0868,
"after": 1.0,
"delta": -0.0868,
"percent_delta": -0.0799,
"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_AB",
"before": 4.8382,
"after": 5.0,
"delta": 0.1618,
"percent_delta": 0.0334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3058,
"after": 0.0,
"delta": -0.3058,
"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": 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.7931,
"after": 1.0,
"delta": 0.2069,
"percent_delta": 0.2609,
"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.7931,
"after": 1.0,
"delta": 0.2069,
"percent_delta": 0.2609,
"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": 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.2251,
"after": 0.2,
"delta": -0.0251,
"percent_delta": -0.1115,
"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.2623,
"after": 0.2,
"delta": -0.0623,
"percent_delta": -0.2375,
"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.3271,
"after": 0.2,
"delta": -0.1271,
"percent_delta": -0.3886,
"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.3271,
"after": 0.2,
"delta": -0.1271,
"percent_delta": -0.3886,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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_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.2251,
"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.2623,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3271,
"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.2,
"after": 0.2251,
"delta": 0.0251,
"percent_delta": 0.1254,
"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.2623,
"delta": 0.0623,
"percent_delta": 0.3113,
"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.3271,
"delta": 0.1271,
"percent_delta": 0.6355,
"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.3271,
"delta": 0.1271,
"percent_delta": 0.6355,
"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.259,
"after": 0.0,
"delta": -0.259,
"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.852,
"after": 4.0,
"delta": 0.148,
"percent_delta": 0.0384,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2251,
"delta": -0.0149,
"percent_delta": -0.0621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.185,
"after": 0.0,
"delta": -0.185,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"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.291,
"after": 0.2623,
"delta": -0.0287,
"percent_delta": -0.0986,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.63,
"after": 0.0,
"delta": -0.63,
"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.355,
"after": 0.3271,
"delta": -0.0279,
"percent_delta": -0.0786,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.926,
"after": 2.0,
"delta": 1.074,
"percent_delta": 1.1598,
"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.926,
"after": 2.0,
"delta": 1.074,
"percent_delta": 1.1598,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"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.259 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.852 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.185 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.291 | - |
| predicted_R | 0.630 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.355 | - |
| predicted_SO | 0.926 | - |
Final model 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.306 | 0.047 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 4.838 | 0.986 |
| predicted_AVG | 0.243 | 0.004 |
| predicted_BB | 0.245 | 0.060 |
| predicted_H | 1.089 | 0.319 |
| predicted_HBP | 0.013 | - |
| predicted_HR | 0.061 | -0.009 |
| predicted_OBP | 0.290 | -0.001 |
| predicted_R | 0.795 | 0.165 |
| predicted_RBI | 0.255 | -0.016 |
| predicted_SLG | 0.346 | -0.009 |
| predicted_SO | 1.083 | 0.157 |
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.306 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 4.838 | 0.000 |
| predicted_AVG | 0.225 | -0.018 |
| predicted_BB | 0.244 | -0.001 |
| predicted_H | 1.089 | -0.000 |
| predicted_HBP | 0.013 | 0.000 |
| predicted_HR | 0.061 | 0.000 |
| predicted_OBP | 0.262 | -0.028 |
| predicted_R | 0.793 | -0.002 |
| predicted_RBI | 0.254 | -0.001 |
| predicted_SLG | 0.327 | -0.019 |
| predicted_SO | 1.087 | 0.003 |
AB rounded to 5 (raw=4.84), rates preserved: AVG=0.225 HR/AB=0.013
| 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 | - |
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.306 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 5.000 | 0.162 |
| predicted_AVG | 0.200 | -0.025 |
| predicted_BB | 0.000 | -0.244 |
| predicted_H | 1.000 | -0.089 |
| predicted_HR | 0.000 | -0.061 |
| predicted_OBP | 0.200 | -0.062 |
| predicted_R | 1.000 | 0.207 |
| predicted_RBI | 0.000 | -0.254 |
| predicted_SLG | 0.200 | -0.127 |
| predicted_SO | 1.000 | -0.087 |
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 | 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 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 3.000 | 0.1579 | 0.2000 | 0.2105 | 0.1579 | 0.0000 | 0.0000 | 0.0526 | 0.1579 |
| last_10 | 0.20 | 8 | - | 38.000 | 15.000 | 2.000 | 0.000 | 0.000 | 1.000 | 10.000 | 1.000 | 4.000 | 0.3947 | 0.4103 | 0.4474 | 0.3947 | 0.0000 | 0.0263 | 0.0263 | 0.1053 |
| season | 0.60 | 12 | - | 104.000 | 26.000 | 7.000 | 0.000 | 0.000 | 1.000 | 17.000 | 5.000 | 25.000 | 0.2500 | 0.2844 | 0.3173 | 0.2500 | 0.0000 | 0.0096 | 0.0481 | 0.2404 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3800 |
| predicted_3B | 0.0050 |
| predicted_AB | 6.4010 |
| predicted_AVG | 0.2491 |
| predicted_BB | 0.3390 |
| predicted_H | 1.5950 |
| predicted_HBP | 0.0130 |
| predicted_HR | 0.0470 |
| predicted_OBP | 0.2891 |
| predicted_R | 1.0570 |
| predicted_RBI | 0.2300 |
| predicted_SLG | 0.3321 |
| predicted_SO | 1.3330 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2590 | 0.3800 | 0.3058 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0019 | model_form_blend |
| predicted_AB | 3.8520 | 6.4010 | 4.8382 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2491 | 0.2435 | model_form_blend |
| predicted_BB | 0.1850 | 0.3390 | 0.2446 | model_form_blend |
| predicted_H | 0.7700 | 1.5950 | 1.0892 | model_form_blend |
| predicted_HBP | - | 0.0130 | 0.0130 | form_only |
| predicted_HR | 0.0700 | 0.0470 | 0.0611 | model_form_blend |
| predicted_OBP | 0.2910 | 0.2891 | 0.2903 | model_form_blend |
| predicted_R | 0.6300 | 1.0570 | 0.7952 | model_form_blend |
| predicted_RBI | 0.2700 | 0.2300 | 0.2545 | model_form_blend |
| predicted_SLG | 0.3550 | 0.3321 | 0.3461 | model_form_blend |
| predicted_SO | 0.9260 | 1.3330 | 1.0835 | 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 | 28 |
| Season rows before report date | 28 |
| 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 | 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 | 1 |
| 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 | 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 | 20260606_LAA@LAD |
| game_type | full |
| mlbID | 622268 |
| playerID | 622268 |
| playerName | Donovan Walton |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-06 |
| sl_k_percent | 19.1 |
| sl_bb_percent | 4.3 |
| sl_woba | 0.269 |
| sl_xwoba | 0.292 |
| sl_xba | 0.249 |
| sl_xslg | 0.391 |
| sl_sweet_spot_percent | 38.9 |
| sl_barrel_batted_rate | 8.3 |
| sl_hard_hit_percent | 36.1 |
| sl_exit_velocity_avg | 86.5 |
| sl_launch_angle_avg | 11.8 |
| sl_whiff_percent | 27.8 |
| sl_swing_percent | 53.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 | 3.000 | 3.000 | 3.000 | Pitching_BB | 2.750 | 3.000 | 0.250 | 0.000 |
| predicted_ER | 5.000 | 5.000 | 5.000 | Pitching_ER | 4.750 | 7.000 | 0.250 | -2.000 |
| predicted_H | 10.000 | 10.000 | 10.000 | Pitching_H | 5.750 | 7.000 | 4.250 | 3.000 |
| predicted_IP | 4.100 | 4.100 | 4.100 | Pitching_InningsPitched | 4.150 | 3.200 | -0.050 | 0.900 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 4.250 | 3.000 | -2.250 | -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: 4.6667 -> 4.1000 (deboost -0.5667, 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.6667 -> 4.1000 (deboost -0.5667, 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": "680570",
"player_name": "Grayson Rodriguez",
"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": 3.0,
"predicted_ER": 5.0,
"predicted_H": 10.0,
"predicted_HR": 0.0,
"predicted_IP": 4.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": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 5.0,
"predicted_H": 10.0,
"predicted_HR": 0.0,
"predicted_IP": 4.1,
"predicted_SO": 2.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": 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.6667,
"after": 4.1,
"delta": -0.5667,
"percent_delta": -0.1214,
"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": 4.6667,
"after": 4.1,
"delta": -0.5667,
"percent_delta": -0.1214,
"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": 5.0,
"predicted_H": 10.0,
"predicted_HR": 0.0,
"predicted_IP": 4.1,
"predicted_R": 5.0,
"predicted_SO": 2.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": 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.1,
"after": 4.1,
"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": 3.0,
"after": 3.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": 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.6667,
"after": 4.1,
"delta": -0.5667,
"percent_delta": -0.1214,
"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": 4.6667,
"after": 4.1,
"delta": -0.5667,
"percent_delta": -0.1214,
"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 | 5.000 | - |
| predicted_H | 10.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 4.667 | - |
| predicted_SO | 2.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 | 5.000 | 0.000 |
| predicted_H | 10.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 4.100 | -0.567 |
| predicted_SO | 2.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 | 18.000 | 19.000 | 23.000 | 11.000 | 17.000 | 4.000 | 9.5000 | 1.8889 | 1.0556 | 1.2778 | 0.6111 | 0.9444 | 0.2222 |
| last_10 | 0.35 | 4 | 18.000 | 19.000 | 23.000 | 11.000 | 17.000 | 4.000 | 9.5000 | 1.8889 | 1.0556 | 1.2778 | 0.6111 | 0.9444 | 0.2222 |
| season | 0.20 | 4 | 18.000 | 19.000 | 23.000 | 11.000 | 17.000 | 4.000 | 9.5000 | 1.8889 | 1.0556 | 1.2778 | 0.6111 | 0.9444 | 0.2222 |
| Metric | Value |
|---|---|
| predicted_BB | 2.2120 |
| predicted_ER | 3.4460 |
| predicted_ERA | 6.6461 |
| predicted_H | 5.1330 |
| predicted_HR | 0.8220 |
| predicted_IP | 4.2000 |
| predicted_SO | 4.3810 |
| predicted_WHIP | 1.5739 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 2.2120 | 2.6728 | model_form_blend |
| predicted_ER | 5.0000 | 3.4460 | 4.3547 | model_form_blend |
| predicted_ERA | - | 6.6461 | 6.6461 | form_only |
| predicted_H | 10.0000 | 5.1330 | 7.9789 | model_form_blend |
| predicted_HR | 0.0000 | 0.8220 | 0.3413 | model_form_blend |
| predicted_IP | 4.2000 | 4.2000 | 4.2000 | model_form_blend |
| predicted_SO | 2.0000 | 4.3810 | 2.9887 | model_form_blend |
| predicted_WHIP | - | 1.5739 | 1.5739 | 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 | 4.1 |
| H | 10 |
| R | 5 |
| ER | 5 |
| BB | 3 |
| SO | 2 |
| HR | 0 |
| BF | 27 |
| 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 | 3 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 21 |
| Pitching_ER | 7 |
| Pitching_ERA | 9.50 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 3 |
| Pitching_H | 7 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 3.2 |
| Pitching_Pitches | 91 |
| Pitching_R | 8 |
| Pitching_SO | 3 |
| Pitching_Strikes | 56 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260602_COL@LAA |
| game_type | full |
| mlbID | 680570 |
| playerID | 680570 |
| playerName | Grayson Rodriguez |
| pos | P |
| started | True |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-02 |
| sl_k_percent | 19.8 |
| sl_bb_percent | 12.8 |
| sl_woba | 0.406 |
| sl_xwoba | 0.402 |
| sl_sweet_spot_percent | 36.2 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 50.0 |
| sl_whiff_percent | 21.9 |
| sl_swing_percent | 45.1 |
| sl_avg_best_speed | 81.167525517 |
| sl_avg_hyper_speed | 95.116846034 |
| 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.536 | 1.000 | -0.536 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.607 | 1.000 | -0.607 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.643 | 1.000 | 0.457 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.821 | 2.000 | -0.821 | -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": "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": 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.100 | 0.000 | 3.000 | 2.000 | 6.000 | 0.000 | 0.0000 | 0.9375 | 0.0000 | 0.5625 | 0.3750 | 1.1250 | 0.0000 |
| last_10 | 0.35 | 10 | 8.100 | 0.000 | 5.000 | 3.000 | 9.000 | 0.000 | 0.0000 | 0.9600 | 0.0000 | 0.6000 | 0.3600 | 1.0800 | 0.0000 |
| season | 0.20 | 28 | 22.200 | 4.000 | 17.000 | 15.000 | 23.000 | 1.000 | 1.5882 | 1.4118 | 0.1765 | 0.7500 | 0.6618 | 1.0147 | 0.0441 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3600 |
| predicted_ER | 0.2490 |
| predicted_ERA | 2.4526 |
| predicted_H | 0.7260 |
| predicted_HR | 0.0710 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9190 |
| predicted_WHIP | 1.1889 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3600 | 0.1537 | model_form_blend |
| predicted_ER | 0.0000 | 0.2490 | 0.1063 | model_form_blend |
| predicted_ERA | - | 2.4526 | 2.4526 | form_only |
| predicted_H | 0.0000 | 0.7260 | 0.3100 | model_form_blend |
| predicted_HR | 0.0000 | 0.0710 | 0.0303 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9190 | 0.3925 | model_form_blend |
| predicted_WHIP | - | 1.1889 | 1.1889 | 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.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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.59 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 21 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 681217 |
| playerID | 681217 |
| playerName | Chase Silseth |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.2 |
| sl_bb_percent | 15.2 |
| sl_woba | 0.301 |
| sl_xwoba | 0.3 |
| sl_sweet_spot_percent | 36.7 |
| sl_barrel_batted_rate | 8.3 |
| sl_hard_hit_percent | 28.3 |
| sl_whiff_percent | 32.8 |
| sl_swing_percent | 46.2 |
| sl_avg_best_speed | 75.110842333 |
| sl_avg_hyper_speed | 92.758726949 |
| 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.522 | 0.000 | 0.478 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.522 | 0.000 | -0.522 | 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 | 0.783 | 0.200 | 0.217 | 0.800 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.696 | 1.000 | 0.304 | 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": "519141",
"player_name": "Drew Pomeranz",
"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": 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": 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": 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": 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": 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 | 1.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 | 4.100 | 0.000 | 5.000 | 4.000 | 3.000 | 0.000 | 0.0000 | 2.0769 | 0.0000 | 1.1539 | 0.9231 | 0.6923 | 0.0000 |
| last_10 | 0.35 | 10 | 8.200 | 0.000 | 8.000 | 5.000 | 7.000 | 0.000 | 0.0000 | 1.5000 | 0.0000 | 0.9231 | 0.5769 | 0.8077 | 0.0000 |
| season | 0.20 | 23 | 20.100 | 12.000 | 23.000 | 12.000 | 16.000 | 4.000 | 5.3115 | 1.7213 | 0.5902 | 1.1312 | 0.5902 | 0.7869 | 0.1967 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5300 |
| predicted_ER | 0.3210 |
| predicted_ERA | 2.8931 |
| predicted_H | 1.0070 |
| predicted_HR | 0.0950 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8530 |
| predicted_WHIP | 1.5366 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.5300 | 0.8046 | model_form_blend |
| predicted_ER | 0.0000 | 0.3210 | 0.1334 | model_form_blend |
| predicted_ERA | - | 2.8931 | 2.8931 | form_only |
| predicted_H | 1.0000 | 1.0070 | 1.0029 | model_form_blend |
| predicted_HR | 0.0000 | 0.0950 | 0.0395 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8530 | 0.9389 | model_form_blend |
| predicted_WHIP | - | 1.5366 | 1.5366 | 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 | 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 | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.31 |
| 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 | 0.2 |
| Pitching_Pitches | 20 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 519141 |
| playerID | 519141 |
| playerName | Drew Pomeranz |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 16.5 |
| sl_bb_percent | 12.4 |
| sl_woba | 0.368 |
| sl_xwoba | 0.34 |
| sl_sweet_spot_percent | 32.8 |
| sl_barrel_batted_rate | 7.5 |
| sl_hard_hit_percent | 35.8 |
| sl_whiff_percent | 23.1 |
| sl_swing_percent | 49.1 |
| sl_avg_best_speed | 77.236679394 |
| sl_avg_hyper_speed | 93.788530606 |
| 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 | 0.000 | 0.636 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.455 | 1.000 | -0.455 | -1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.727 | 1.000 | 0.273 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.764 | 0.000 | 0.336 | 1.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.091 | 0.000 | -1.091 | 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": "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": 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.1,
"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.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": 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.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 | 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 | 1.000 | 3.000 | 2.000 | 5.000 | 0.000 | 1.8000 | 1.0000 | 0.2000 | 0.6000 | 0.4000 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 7.000 | 4.000 | 12.000 | 1.000 | 3.8571 | 1.1786 | 0.4286 | 0.7500 | 0.4286 | 1.2857 | 0.1071 |
| season | 0.20 | 10 | 9.100 | 4.000 | 7.000 | 4.000 | 12.000 | 1.000 | 3.8571 | 1.1786 | 0.4286 | 0.7500 | 0.4286 | 1.2857 | 0.1071 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3770 |
| predicted_ER | 0.4350 |
| predicted_ERA | 3.9154 |
| predicted_H | 0.8790 |
| predicted_HR | 0.1140 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9860 |
| predicted_WHIP | 1.2563 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3770 | 0.7874 | model_form_blend |
| predicted_ER | 0.0000 | 0.4350 | 0.1485 | model_form_blend |
| predicted_ERA | - | 3.9154 | 3.9154 | form_only |
| predicted_H | 1.0000 | 0.8790 | 0.9587 | model_form_blend |
| predicted_HR | 0.0000 | 0.1140 | 0.0389 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9860 | 0.3365 | model_form_blend |
| predicted_WHIP | - | 1.2563 | 1.2563 | 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 | 11 |
| Season rows before report date | 11 |
| Report year | 2026 |
| Profile rows used | 10 |
| 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 | 1 |
| SO | 0 |
| HR | 0 |
| 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 | 1 |
| Pitching_ER | 1 |
| Pitching_ERA | 4.82 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 6 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 3 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260605_LAA@LAD |
| game_type | full |
| mlbID | 489446 |
| playerID | 489446 |
| playerName | Kirby Yates |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-05 |
| sl_k_percent | 28.6 |
| sl_bb_percent | 9.5 |
| sl_woba | 0.338 |
| sl_xwoba | 0.329 |
| sl_sweet_spot_percent | 40.0 |
| sl_barrel_batted_rate | 12.0 |
| sl_hard_hit_percent | 64.0 |
| sl_whiff_percent | 24.7 |
| sl_swing_percent | 48.2 |
| sl_avg_best_speed | 87.195556923 |
| sl_avg_hyper_speed | 97.9409496 |
| 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.609 | 0.000 | -0.609 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.304 | 0.000 | -0.304 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.739 | 0.000 | 0.261 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.117 | 0.100 | -0.117 | 0.900 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.391 | 1.000 | 0.609 | 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": "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": 1.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": 1.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": 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": 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": 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": 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 | 1.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 | 0.000 | 3.000 | 4.000 | 7.000 | 0.000 | 0.0000 | 1.5000 | 0.0000 | 0.6429 | 0.8571 | 1.5000 | 0.0000 |
| last_10 | 0.35 | 10 | 11.000 | 0.000 | 6.000 | 4.000 | 11.000 | 0.000 | 0.0000 | 0.9091 | 0.0000 | 0.5454 | 0.3636 | 1.0000 | 0.0000 |
| season | 0.20 | 23 | 29.200 | 7.000 | 17.000 | 14.000 | 32.000 | 2.000 | 2.1236 | 1.0449 | 0.2360 | 0.5730 | 0.4719 | 1.0787 | 0.0674 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5130 |
| predicted_ER | 0.2580 |
| predicted_ERA | 2.2385 |
| predicted_H | 0.7890 |
| predicted_HR | 0.0740 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1390 |
| predicted_WHIP | 1.2573 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5130 | 0.2336 | model_form_blend |
| predicted_ER | 0.0000 | 0.2580 | 0.1175 | model_form_blend |
| predicted_ERA | - | 2.2385 | 2.2385 | form_only |
| predicted_H | 1.0000 | 0.7890 | 0.9039 | 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 | 2.0000 | 1.1390 | 1.6079 | model_form_blend |
| predicted_WHIP | - | 1.2573 | 1.2573 | 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 | 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 | 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 | 1 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.12 |
| 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.1 |
| Pitching_Pitches | 8 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_LAA@LAD |
| game_type | full |
| mlbID | 696147 |
| playerID | 696147 |
| playerName | Sam Bachman |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-07 |
| sl_k_percent | 26.9 |
| sl_bb_percent | 11.8 |
| sl_woba | 0.255 |
| sl_xwoba | 0.26 |
| sl_sweet_spot_percent | 28.2 |
| sl_barrel_batted_rate | 4.3 |
| sl_hard_hit_percent | 31.0 |
| sl_whiff_percent | 35.3 |
| sl_swing_percent | 44.2 |
| sl_avg_best_speed | 75.566795429 |
| sl_avg_hyper_speed | 92.783316377 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | MIL 5 - 1 OAK | MIL | 0.660 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | MIL 5 - 2 OAK | MIL | - | 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.6600 |
| 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.386 | 3.076 | - | Base ML historical model prediction |
| 2 | variance_applied | 7 | 3 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 5 | 1 | 0.6600 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 5 | 1 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 5 | 1 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 5 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4744516728624536,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.051589219330855085,
"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": 6,
"pre_simulation_expected_total_runs": 9.6,
"low_score_model_expected_total_runs": 9.6,
"final_simulation_total_runs": 7,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 143,
"near_bucket_sample_size": 0,
"medium_bucket_sample_size": 0,
"wide_bucket_sample_size": 0,
"global_sample_size": 143,
"bucket_scope": "global_fallback",
"sparse_bucket": false,
"empirical_hit_rate": 0.5874,
"bayesian_hit_rate": 0.5776,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8882,
"confidence_cap": 0.78,
"raw_pick_probability": 0.8613,
"calibrated_pick_probability": 0.672,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "OAK",
"games": 65,
"wins": 31,
"losses": 34,
"win_pct": 0.47692307692307695,
"runs_scored": 273,
"runs_allowed": 316,
"run_differential": -43,
"run_differential_per_game": -0.6615384615384615,
"available": true
},
"away": {
"team": "MIL",
"games": 63,
"wins": 40,
"losses": 23,
"win_pct": 0.6349206349206349,
"runs_scored": 329,
"runs_allowed": 224,
"run_differential": 105,
"run_differential_per_game": 1.6666666666666667,
"available": true
},
"run_differential_edge_per_game": -2.3282,
"win_pct_edge": -0.158,
"quality_edge": -2.5652,
"margin_adjustment": -1.0774,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 5.927,
"home_runs": 0.0,
"home_win_probability": 0.08
}
}{
"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": "OAK",
"final_score_winner": "MIL",
"pre_simulation_winner": "MIL",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 5,
"home_runs": 1,
"score_text": "MIL 5 - 1 OAK",
"winner": "MIL"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 2,
"score_text": "MIL 5 - 2 OAK",
"winner": "MIL"
},
"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": "OAK",
"games": 65,
"wins": 31,
"losses": 34,
"win_pct": 0.47692307692307695,
"runs_scored": 273,
"runs_allowed": 316,
"run_differential": -43,
"run_differential_per_game": -0.6615384615384615,
"available": true
},
"away": {
"team": "MIL",
"games": 63,
"wins": 40,
"losses": 23,
"win_pct": 0.6349206349206349,
"runs_scored": 329,
"runs_allowed": 224,
"run_differential": 105,
"run_differential_per_game": 1.6666666666666667,
"available": true
}
}
}{
"applied": true,
"raw_margin": -5.9266,
"final_margin": -4.25,
"margin_cap": 4.25,
"season_quality_edge": 2.5652,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 5.088,
"home_runs": 0.838
}
}{
"applied": true,
"raw_confidence": 0.671975,
"final_confidence": 0.66,
"confidence_cap": 0.66,
"score_gap": 4.25,
"calibration_sample_size": 143,
"calibration_empirical_hit_rate": 0.5874,
"calibration_bayesian_hit_rate": 0.5776,
"calibration_sparse_bucket": false,
"season_quality_edge": 2.5652,
"reasons": [
"unvalidated probabilities are capped for production display",
"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": 5,
"home_runs": 1,
"score_text": "MIL 5 - 1 OAK",
"winner": "MIL"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 2,
"score_text": "MIL 5 - 2 OAK",
"winner": "MIL"
},
"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": 5,
"home_runs": 1,
"confidence": 0.66,
"home_win_probability": 0.33999999999999997,
"away_win_probability": 0.66,
"predicted_score_text": "MIL 5 - 1 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": "MIL",
"original_runs": 5,
"run_delta": 0.4437,
"adjusted_runs": 5,
"lineup": {
"players_used": 9,
"total_weight": 55.0,
"quality": 0.26681130506427025,
"contact": 0.3905143667757804,
"power": 0.3652074709012309,
"discipline": 0.29347639591286,
"xwoba": 0.33254545454545453,
"recent_xwoba": 0.33254545454545453,
"barrel": 8.94909090909091,
"ab_hard_contact": 0.1412957383709369,
"ab_bat_speed": 71.15815623728069,
"ab_strikeout_rate": 0.22767359607046522,
"available_players": 9,
"top_players": [
{
"player_id": "641343",
"player_name": "Jake Bauers",
"position": "RF",
"weight": 6.0,
"quality": 0.7883526476820968,
"contact": 1.1036834094391124,
"power": 1.3014765148999967,
"discipline": 0.3897332050665382,
"xwoba": 0.365,
"recent_xwoba": 0.365,
"barrel": 13.4,
"ab_hard_contact": 0.7297207741903955,
"ab_bat_speed": 75.74101632395383,
"ab_strikeout_rate": 0.22954545454545452,
"available": 1.0
},
{
"player_id": "668930",
"player_name": "Brice Turang",
"position": "2B",
"weight": 7.0,
"quality": 0.795277160663042,
"contact": 0.9857112454480098,
"power": 0.6917566124823051,
"discipline": 1.086321649029982,
"xwoba": 0.372,
"recent_xwoba": 0.372,
"barrel": 8.2,
"ab_hard_contact": 0.8069417734556306,
"ab_bat_speed": 67.52860339506172,
"ab_strikeout_rate": 0.23067129629629632,
"available": 1.0
},
{
"player_id": "694192",
"player_name": "Jackson Chourio",
"position": "LF",
"weight": 7.0,
"quality": 0.3195903602105685,
"contact": 0.6028858821265117,
"power": 1.5708848006399467,
"discipline": -0.29233036294439807,
"xwoba": 0.344,
"recent_xwoba": 0.344,
"barrel": 17.2,
"ab_hard_contact": 0.7220769651798942,
"ab_bat_speed": 73.21261779448622,
"ab_strikeout_rate": 0.3078947368421052,
"available": 1.0
},
{
"player_id": "687401",
"player_name": "Joey Ortiz",
"position": "SS",
"weight": 5.0,
"quality": -0.2692747849857334,
"contact": -0.45950802952762326,
"power": -1.0821895283074214,
"discipline": 0.9271809152510906,
"xwoba": 0.298,
"recent_xwoba": 0.298,
"barrel": 2.8,
"ab_hard_contact": -0.9736953280531897,
"ab_bat_speed": 69.79511695906433,
"ab_strikeout_rate": 0.18552631578947368,
"available": 1.0
},
{
"player_id": "669003",
"player_name": "Garrett Mitchell",
"position": "CF",
"weight": 6.0,
"quality": 0.2954580350104486,
"contact": 0.1746433698338758,
"power": 0.9400071177217137,
"discipline": -0.3165000000000001,
"xwoba": 0.334,
"recent_xwoba": 0.334,
"barrel": 14.6,
"ab_hard_contact": 0.6100471163390417,
"ab_bat_speed": 74.59334986772487,
"ab_strikeout_rate": 0.43313492063492065,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "605488",
"player_name": "Jeffrey Springs",
"quality": -0.16535868802289286,
"contact": -0.06179998716054478,
"command": -0.25343081086921665,
"movement": -0.9089111163645509,
"xwoba": 0.315,
"whiff": 22.8,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "OAK",
"original_runs": 1,
"run_delta": -0.0319,
"adjusted_runs": 1,
"lineup": {
"players_used": 9,
"total_weight": 52.0,
"quality": 0.40318405236591215,
"contact": 0.18990340416585433,
"power": 0.6809029192371714,
"discipline": -0.3809695422035166,
"xwoba": 0.32175,
"recent_xwoba": 0.32175,
"barrel": 11.38076923076923,
"ab_hard_contact": 0.395585857270902,
"ab_bat_speed": 73.66980120731863,
"ab_strikeout_rate": 0.2780600150023227,
"available_players": 9,
"top_players": [
{
"player_id": "701762",
"player_name": "Nick Kurtz",
"position": "1B",
"weight": 7.0,
"quality": 1.397175519555471,
"contact": 1.3086201485564763,
"power": 1.9629812428656244,
"discipline": 0.6010881834215169,
"xwoba": 0.399,
"recent_xwoba": 0.399,
"barrel": 18.8,
"ab_hard_contact": 1.268767714455345,
"ab_bat_speed": 76.35883401920438,
"ab_strikeout_rate": 0.3083333333333333,
"available": 1.0
},
{
"player_id": "669127",
"player_name": "Shea Langeliers",
"position": "C",
"weight": 8.0,
"quality": 1.1123508688277322,
"contact": 1.1715706730538298,
"power": 1.566560383227666,
"discipline": -0.09443562610229292,
"xwoba": 0.38,
"recent_xwoba": 0.38,
"barrel": 15.0,
"ab_hard_contact": 1.2586362359818988,
"ab_bat_speed": 74.42080277777778,
"ab_strikeout_rate": 0.21600000000000003,
"available": 1.0
},
{
"player_id": "691016",
"player_name": "Tyler Soderstrom",
"position": "LF",
"weight": 6.0,
"quality": 0.42266398475063477,
"contact": 0.3521230511307536,
"power": 0.5232267741706718,
"discipline": 0.5797859856193188,
"xwoba": 0.33,
"recent_xwoba": 0.33,
"barrel": 11.2,
"ab_hard_contact": 0.37805929293724555,
"ab_bat_speed": 72.399640491453,
"ab_strikeout_rate": 0.20256410256410257,
"available": 1.0
},
{
"player_id": "675961",
"player_name": "Alika Williams",
"position": "SS",
"weight": 3.0,
"quality": -0.041074759786700846,
"contact": -1.7217309523809523,
"power": -1.4628464654024236,
"discipline": -1.5347451499118165,
"xwoba": 0.158,
"recent_xwoba": 0.158,
"barrel": 0.0,
"ab_hard_contact": -1.6203578794770386,
"ab_bat_speed": 68.26666666666667,
"ab_strikeout_rate": 0.4166666666666667,
"available": 1.0
},
{
"player_id": "667670",
"player_name": "Brent Rooker",
"position": "DH",
"weight": 6.0,
"quality": 0.1338536195807399,
"contact": -0.29457039559481835,
"power": 0.9632956405324709,
"discipline": -0.8072329233995903,
"xwoba": 0.32,
"recent_xwoba": 0.32,
"barrel": 15.8,
"ab_hard_contact": 0.5386747154113278,
"ab_bat_speed": 72.81524774774775,
"ab_strikeout_rate": 0.3472972972972973,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "690986",
"player_name": "Kyle Harrison",
"quality": 0.4845564859807514,
"contact": 0.8459928194052484,
"command": 0.6935691891307832,
"movement": 0.3639331503891541,
"xwoba": 0.28,
"whiff": 29.5,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 5,
"home_runs": 1,
"predicted_score_text": "MIL 5 - 1 OAK",
"confidence": 0.66,
"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": 5,
"home_runs": 1,
"score_text": "MIL 5 - 1 OAK",
"winner": "MIL"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 2,
"score_text": "MIL 5 - 2 OAK",
"winner": "MIL"
},
"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 MIL | True | 1.0256 | 1.0256 | 1 | 9 | 0 |
| Home OAK | True | 1.0263 | 1.0263 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Christian Yelich | 162 | 0.9858 | -0.1898 | negative_batter_regression | 0.2960 | 0.2230 | 0.3760 | 6.70 | 36 | 88.40 | 2.60 | 33.60 | 28.80 | 9.60 | -1.5429 |
| 2B | Brice Turang | 8 | 1.0745 | 0.9937 | neutral | 0.3720 | 0.2630 | 0.4620 | 8.20 | 48.10 | 91.30 | 8.20 | 20.70 | 24 | 17 | -0.4286 |
| LF | Jackson Chourio | 108 | 1.0323 | 0.4303 | neutral | 0.3440 | 0.2440 | 0.4970 | 17.20 | 49.40 | 92.70 | 13.10 | 24.40 | 26.90 | 8.20 | -0.5714 |
| C | William Contreras | 98 | 1.0427 | 0.5695 | neutral | 0.3350 | 0.2800 | 0.4330 | 6.80 | 41.70 | 89.90 | 11.90 | 19.20 | 12.60 | 8.40 | 0.2857 |
| RF | Jake Bauers | 78 | 1.0664 | 0.8853 | neutral | 0.3650 | 0.2670 | 0.4850 | 13.40 | 54.50 | 92.40 | 8.60 | 24.90 | 22.20 | 12.20 | -0.6000 |
| 1B | Andrew Vaughn | 174 | 1.0093 | 0.1243 | negative_batter_regression | 0.3370 | 0.2940 | 0.4020 | 2.80 | 44.40 | 90.10 | 8.80 | 18.80 | 11.10 | 6.70 | -1.5714 |
| CF | Garrett Mitchell | 117 | 1.0333 | 0.4445 | neutral | 0.3340 | 0.2240 | 0.4060 | 14.60 | 51 | 92.80 | 4.80 | 37.50 | 35.70 | 14.30 | -0.1429 |
| 3B | Luis Rengifo | 494 | 1.0010 | 0.0130 | positive_batter_regression | 0.2980 | 0.2520 | 0.3440 | 5.10 | 34.40 | 87.50 | 3.90 | 18.90 | 10.30 | 8.70 | 1.5714 |
| SS | Joey Ortiz | 228 | 0.9849 | -0.2019 | positive_batter_regression | 0.2980 | 0.2240 | 0.2920 | 2.80 | 33.30 | 86.70 | 8.90 | 17.40 | 16.90 | 13 | 1.1143 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Brent Rooker | 460 | 1.0288 | 0.3838 | neutral | 0.3200 | 0.2120 | 0.4470 | 15.80 | 42.60 | 89.80 | 19.40 | 38.10 | 31.50 | 9.10 | 0.5429 |
| RF | Colby Thomas | 423 | 1.0237 | 0.3155 | neutral | 0.3330 | 0.2380 | 0.4970 | 11.40 | 40 | 91.30 | 18.40 | 32.40 | 25.50 | 5.90 | 0.4000 |
| C | Shea Langeliers | 18 | 1.1100 | 1.4663 | neutral | 0.3800 | 0.2840 | 0.5410 | 15 | 44.60 | 91.60 | 20.80 | 26 | 18.70 | 7.80 | -0.0286 |
| 1B | Nick Kurtz | 12 | 1.1281 | 1.7080 | neutral | 0.3990 | 0.2580 | 0.5110 | 18.80 | 57.60 | 94.20 | 12.90 | 35.40 | 29 | 20.70 | -0.1714 |
| 3B | Max Muncy | - | 1.0097 | 0.1289 | neutral | 0.3030 | 0.2240 | 0.3910 | 12.30 | 56.10 | 92.50 | 10.50 | 35.40 | 35.60 | 5.80 | -0.2857 |
| 2B | Zack Gelof | 159 | 0.9858 | -0.1898 | negative_batter_regression | 0.2910 | 0.2260 | 0.3850 | 7.60 | 39.50 | 88.30 | 16 | 27.10 | 24.30 | 6.40 | -1.0571 |
| CF | Henry Bolte | 193 | 0.9678 | -0.4289 | negative_batter_regression | 0.2710 | 0.2100 | 0.2720 | 0 | 53.20 | 91.60 | 3 | 34 | 27.80 | 8.90 | -2 |
| LF | Tyler Soderstrom | 106 | 1.0381 | 0.5087 | neutral | 0.3300 | 0.2460 | 0.4180 | 11.20 | 43.90 | 89.90 | 13.30 | 21.60 | 18.80 | 11.90 | 0.0571 |
| SS | Alika Williams | 356 | 0.9443 | -0.7430 | neutral | 0.1580 | 0.1370 | 0.1660 | 0 | 41.70 | 88.80 | 16.50 | 34.90 | 40.90 | 4.50 | 0.1143 |
{
"home": {
"applied": true,
"offense_factor": 1.0263,
"raw_average_factor": 1.0263,
"team_espn_average_rank": 215.88,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "667670",
"player_name": "Brent Rooker",
"offense_factor": 1.0288,
"quality_score": 0.3838,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "667670",
"espn_id": 40926,
"player_name": "Brent Rooker",
"team": "ATH",
"role": "batter",
"espn_rank": 460,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 460,
"gp_value": 47.0,
"gp_rank": "223",
"ab_value": 175.0,
"ab_rank": "171",
"r_value": 19.0,
"r_rank": "194",
"h_value": 36.0,
"h_rank": "197",
"avg_value": 0.2057142,
"avg_rank": 157.0,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 10.0,
"hr_rank": "49",
"rbi_value": 29.0,
"rbi_rank": "89",
"tb_value": 70.0,
"tb_rank": "969",
"bb_value": 18.0,
"bb_rank": "147",
"so_value": 62.0,
"so_rank": "49",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.2842639,
"obp_rank": "149",
"slg_value": 0.4,
"slg_rank": "106",
"ops_value": 0.6842639,
"ops_rank": 122.0,
"war_value": -0.29,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 156.0,
"k_percent": 31.5,
"bb_percent": 9.1,
"woba": 0.301,
"xwoba": 0.32,
"xba": 0.212,
"xslg": 0.447,
"sweet_spot_percent": 33.9,
"barrel_batted_rate": 15.8,
"hard_hit_percent": 42.6,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 19.4,
"whiff_percent": 38.1,
"swing_percent": 49.7
},
"components": {
"expected_quality": 0.541,
"regression_edge": 0.5429,
"xwoba_edge": 0.4286,
"xba_edge": -0.7714,
"xslg_edge": 1.0429,
"barrel_edge": 1.9556,
"hard_hit_edge": 0.5357,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.1,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "687515",
"player_name": "Colby Thomas",
"offense_factor": 1.0237,
"quality_score": 0.3155,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687515",
"espn_id": 4662616,
"player_name": "Colby Thomas",
"team": "ATH",
"role": "batter",
"espn_rank": 423,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 423,
"gp_value": 24.0,
"gp_rank": "373",
"ab_value": 47.0,
"ab_rank": "402",
"r_value": 6.0,
"r_rank": "382",
"h_value": 12.0,
"h_rank": "375",
"avg_value": 0.2553191,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": "370",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 6.0,
"rbi_rank": "364",
"tb_value": 20.0,
"tb_rank": "1915",
"bb_value": 3.0,
"bb_rank": "406",
"so_value": 13.0,
"so_rank": "395",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3,
"obp_rank": "-",
"slg_value": 0.4255319,
"slg_rank": "-",
"ops_value": 0.7255319,
"ops_rank": null,
"war_value": -0.16,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 36.0,
"k_percent": 25.5,
"bb_percent": 5.9,
"woba": 0.319,
"xwoba": 0.333,
"xba": 0.238,
"xslg": 0.497,
"sweet_spot_percent": 31.4,
"barrel_batted_rate": 11.4,
"hard_hit_percent": 40.0,
"exit_velocity_avg": 91.3,
"launch_angle_avg": 18.4,
"whiff_percent": 32.4,
"swing_percent": 57.8
},
"components": {
"expected_quality": 0.75,
"regression_edge": 0.4,
"xwoba_edge": 0.8,
"xba_edge": -0.0286,
"xslg_edge": 1.7571,
"barrel_edge": 0.9778,
"hard_hit_edge": 0.1643,
"exit_velocity_edge": 1.0,
"sweet_spot_edge": -0.3167,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "C",
"player_id": "669127",
"player_name": "Shea Langeliers",
"offense_factor": 1.11,
"quality_score": 1.4663,
"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": 549,
"metrics": {
"espn_rank": 18,
"gp_value": 59.0,
"gp_rank": "132",
"ab_value": 242.0,
"ab_rank": "27",
"r_value": 41.0,
"r_rank": "18",
"h_value": 68.0,
"h_rank": "22",
"avg_value": 0.2809917,
"avg_rank": 32.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 16.0,
"hr_rank": "10",
"rbi_value": 33.0,
"rbi_rank": "52",
"tb_value": 129.0,
"tb_rank": "443",
"bb_value": 21.0,
"bb_rank": "108",
"so_value": 50.0,
"so_rank": "100",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3470149,
"obp_rank": "53",
"slg_value": 0.5330578,
"slg_rank": "13",
"ops_value": 0.8800727,
"ops_rank": 19.0,
"war_value": 2.62,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 226.0,
"k_percent": 18.7,
"bb_percent": 7.8,
"woba": 0.381,
"xwoba": 0.38,
"xba": 0.284,
"xslg": 0.541,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 15.0,
"hard_hit_percent": 44.6,
"exit_velocity_avg": 91.6,
"launch_angle_avg": 20.8,
"whiff_percent": 26.0,
"swing_percent": 51.4
},
"components": {
"expected_quality": 1.7096,
"regression_edge": -0.0286,
"xwoba_edge": 2.1429,
"xba_edge": 1.2857,
"xslg_edge": 2.3857,
"barrel_edge": 1.7778,
"hard_hit_edge": 0.8214,
"exit_velocity_edge": 1.12,
"sweet_spot_edge": 0.5833,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "1B",
"player_id": "701762",
"player_name": "Nick Kurtz",
"offense_factor": 1.1281,
"quality_score": 1.708,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "701762",
"espn_id": 4966637,
"player_name": "Nick Kurtz",
"team": "ATH",
"role": "batter",
"espn_rank": 12,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 12,
"gp_value": 64.0,
"gp_rank": "37",
"ab_value": 228.0,
"ab_rank": "72",
"r_value": 42.0,
"r_rank": "15",
"h_value": 63.0,
"h_rank": "44",
"avg_value": 0.2763157,
"avg_rank": 43.0,
"2b_value": 12.0,
"2b_rank": "54",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 12.0,
"hr_rank": "35",
"rbi_value": 45.0,
"rbi_rank": "8",
"tb_value": 113.0,
"tb_rank": "319",
"bb_value": 60.0,
"bb_rank": "1",
"so_value": 84.0,
"so_rank": "8",
"sb_value": 7.0,
"sb_rank": "52",
"obp_value": 0.4310344,
"obp_rank": "1",
"slg_value": 0.495614,
"slg_rank": "29",
"ops_value": 0.9266484,
"ops_rank": 10.0,
"war_value": 2.73,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 241.0,
"k_percent": 29.0,
"bb_percent": 20.7,
"woba": 0.405,
"xwoba": 0.399,
"xba": 0.258,
"xslg": 0.511,
"sweet_spot_percent": 40.3,
"barrel_batted_rate": 18.8,
"hard_hit_percent": 57.6,
"exit_velocity_avg": 94.2,
"launch_angle_avg": 12.9,
"whiff_percent": 35.4,
"swing_percent": 40.7
},
"components": {
"expected_quality": 2.014,
"regression_edge": -0.1714,
"xwoba_edge": 2.5,
"xba_edge": 0.5429,
"xslg_edge": 1.9571,
"barrel_edge": 2.5,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.16,
"sweet_spot_edge": 1.1667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "691777",
"player_name": "Max Muncy",
"offense_factor": 1.0097,
"quality_score": 0.1289,
"regression_flag": "neutral",
"espn_rank": {
"available": false,
"player_id": "691777",
"espn_rank": null
},
"metrics": {
"pa": 101.0,
"k_percent": 35.6,
"bb_percent": 5.8,
"woba": 0.313,
"xwoba": 0.303,
"xba": 0.224,
"xslg": 0.391,
"sweet_spot_percent": 35.1,
"barrel_batted_rate": 12.3,
"hard_hit_percent": 56.1,
"exit_velocity_avg": 92.5,
"launch_angle_avg": 10.5,
"whiff_percent": 35.4,
"swing_percent": 51.0
},
"components": {
"expected_quality": 0.3729,
"regression_edge": -0.2857,
"xwoba_edge": -0.0571,
"xba_edge": -0.4286,
"xslg_edge": 0.2429,
"barrel_edge": 1.1778,
"hard_hit_edge": 2.4643,
"exit_velocity_edge": 1.48,
"sweet_spot_edge": 0.3,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "680869",
"player_name": "Zack Gelof",
"offense_factor": 0.9858,
"quality_score": -0.1898,
"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": 159,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 159,
"gp_value": 49.0,
"gp_rank": "208",
"ab_value": 159.0,
"ab_rank": "199",
"r_value": 23.0,
"r_rank": "153",
"h_value": 42.0,
"h_rank": "165",
"avg_value": 0.2641509,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": "214",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 21.0,
"rbi_rank": "174",
"tb_value": 68.0,
"tb_rank": "864",
"bb_value": 11.0,
"bb_rank": "245",
"so_value": 42.0,
"so_rank": "146",
"sb_value": 6.0,
"sb_rank": "68",
"obp_value": 0.3157894,
"obp_rank": "-",
"slg_value": 0.4276729,
"slg_rank": "-",
"ops_value": 0.7434623,
"ops_rank": null,
"war_value": 0.73,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 128.0,
"k_percent": 24.3,
"bb_percent": 6.4,
"woba": 0.328,
"xwoba": 0.291,
"xba": 0.226,
"xslg": 0.385,
"sweet_spot_percent": 27.7,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 39.5,
"exit_velocity_avg": 88.3,
"launch_angle_avg": 16.0,
"whiff_percent": 27.1,
"swing_percent": 46.5
},
"components": {
"expected_quality": -0.2072,
"regression_edge": -1.0571,
"xwoba_edge": -0.4,
"xba_edge": -0.3714,
"xslg_edge": 0.1571,
"barrel_edge": 0.1333,
"hard_hit_edge": 0.0929,
"exit_velocity_edge": -0.2,
"sweet_spot_edge": -0.9333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "703607",
"player_name": "Henry Bolte",
"offense_factor": 0.9678,
"quality_score": -0.4289,
"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": 193,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 193,
"gp_value": 23.0,
"gp_rank": "379",
"ab_value": 68.0,
"ab_rank": "366",
"r_value": 5.0,
"r_rank": "398",
"h_value": 21.0,
"h_rank": "307",
"avg_value": 0.3088235,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 5.0,
"rbi_rank": "386",
"tb_value": 25.0,
"tb_rank": "2192",
"bb_value": 7.0,
"bb_rank": "313",
"so_value": 22.0,
"so_rank": "310",
"sb_value": 4.0,
"sb_rank": "108",
"obp_value": 0.392405,
"obp_rank": "-",
"slg_value": 0.367647,
"slg_rank": "-",
"ops_value": 0.760052,
"ops_rank": null,
"war_value": 0.48,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 41.0,
"k_percent": 27.8,
"bb_percent": 8.9,
"woba": 0.347,
"xwoba": 0.271,
"xba": 0.21,
"xslg": 0.272,
"sweet_spot_percent": 19.1,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 53.2,
"exit_velocity_avg": 91.6,
"launch_angle_avg": 3.0,
"whiff_percent": 34.0,
"swing_percent": 51.3
},
"components": {
"expected_quality": -0.7828,
"regression_edge": -2.0,
"xwoba_edge": -0.9714,
"xba_edge": -0.8286,
"xslg_edge": -1.4571,
"barrel_edge": -1.5556,
"hard_hit_edge": 2.05,
"exit_velocity_edge": 1.12,
"sweet_spot_edge": -2.3667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "691016",
"player_name": "Tyler Soderstrom",
"offense_factor": 1.0381,
"quality_score": 0.5087,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691016",
"espn_id": 4686066,
"player_name": "Tyler Soderstrom",
"team": "ATH",
"role": "batter",
"espn_rank": 106,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 106,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 228.0,
"ab_rank": "72",
"r_value": 27.0,
"r_rank": "111",
"h_value": 52.0,
"h_rank": "102",
"avg_value": 0.2280701,
"avg_rank": 132.0,
"2b_value": 17.0,
"2b_rank": "7",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 30.0,
"rbi_rank": "78",
"tb_value": 97.0,
"tb_rank": "361",
"bb_value": 31.0,
"bb_rank": "38",
"so_value": 49.0,
"so_rank": "106",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.321839,
"obp_rank": "104",
"slg_value": 0.4254385,
"slg_rank": "79",
"ops_value": 0.7472775,
"ops_rank": 89.0,
"war_value": 1.13,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 216.0,
"k_percent": 18.8,
"bb_percent": 11.9,
"woba": 0.328,
"xwoba": 0.33,
"xba": 0.246,
"xslg": 0.418,
"sweet_spot_percent": 28.3,
"barrel_batted_rate": 11.2,
"hard_hit_percent": 43.9,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 13.3,
"whiff_percent": 21.6,
"swing_percent": 47.2
},
"components": {
"expected_quality": 0.5931,
"regression_edge": 0.0571,
"xwoba_edge": 0.7143,
"xba_edge": 0.2,
"xslg_edge": 0.6286,
"barrel_edge": 0.9333,
"hard_hit_edge": 0.7214,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": -0.8333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "675961",
"player_name": "Alika Williams",
"offense_factor": 0.9443,
"quality_score": -0.743,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "675961",
"espn_id": 4424289,
"player_name": "Alika Williams",
"team": "ATH",
"role": "batter",
"espn_rank": 356,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 356,
"gp_value": 13.0,
"gp_rank": "440",
"ab_value": 21.0,
"ab_rank": "473",
"r_value": 3.0,
"r_rank": "432",
"h_value": 3.0,
"h_rank": "475",
"avg_value": 0.1428571,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 2.0,
"rbi_rank": "448",
"tb_value": 3.0,
"tb_rank": "2558",
"bb_value": 1.0,
"bb_rank": "459",
"so_value": 9.0,
"so_rank": "429",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.1818181,
"obp_rank": "-",
"slg_value": 0.1428571,
"slg_rank": "-",
"ops_value": 0.3246752,
"ops_rank": null,
"war_value": -0.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 6.0,
"k_percent": 40.9,
"bb_percent": 4.5,
"woba": 0.154,
"xwoba": 0.158,
"xba": 0.137,
"xslg": 0.166,
"sweet_spot_percent": 16.7,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 41.7,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 16.5,
"whiff_percent": 34.9,
"swing_percent": 47.3
},
"components": {
"expected_quality": -1.9384,
"regression_edge": 0.1143,
"xwoba_edge": -2.5,
"xba_edge": -2.5,
"xslg_edge": -2.5,
"barrel_edge": -1.5556,
"hard_hit_edge": 0.4071,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": -2.5,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0256,
"raw_average_factor": 1.0256,
"team_espn_average_rank": 163.0,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "592885",
"player_name": "Christian Yelich",
"offense_factor": 0.9858,
"quality_score": -0.1898,
"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": 162,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 162,
"gp_value": 34.0,
"gp_rank": "314",
"ab_value": 131.0,
"ab_rank": "236",
"r_value": 26.0,
"r_rank": "121",
"h_value": 37.0,
"h_rank": "190",
"avg_value": 0.2824427,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 20.0,
"rbi_rank": "183",
"tb_value": 58.0,
"tb_rank": "1039",
"bb_value": 14.0,
"bb_rank": "195",
"so_value": 42.0,
"so_rank": "146",
"sb_value": 4.0,
"sb_rank": "108",
"obp_value": 0.3561643,
"obp_rank": "-",
"slg_value": 0.442748,
"slg_rank": "-",
"ops_value": 0.7989123,
"ops_rank": null,
"war_value": 0.7,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 94.0,
"k_percent": 28.8,
"bb_percent": 9.6,
"woba": 0.35,
"xwoba": 0.296,
"xba": 0.223,
"xslg": 0.376,
"sweet_spot_percent": 29.2,
"barrel_batted_rate": 6.7,
"hard_hit_percent": 36.0,
"exit_velocity_avg": 88.4,
"launch_angle_avg": 2.6,
"whiff_percent": 33.6,
"swing_percent": 45.0
},
"components": {
"expected_quality": -0.2392,
"regression_edge": -1.5429,
"xwoba_edge": -0.2571,
"xba_edge": -0.4571,
"xslg_edge": 0.0286,
"barrel_edge": -0.0667,
"hard_hit_edge": -0.4071,
"exit_velocity_edge": -0.16,
"sweet_spot_edge": -0.6833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "668930",
"player_name": "Brice Turang",
"offense_factor": 1.0745,
"quality_score": 0.9937,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668930",
"espn_id": 41179,
"player_name": "Brice Turang",
"team": "MIL",
"role": "batter",
"espn_rank": 8,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 8,
"gp_value": 60.0,
"gp_rank": "110",
"ab_value": 221.0,
"ab_rank": "92",
"r_value": 50.0,
"r_rank": "2",
"h_value": 62.0,
"h_rank": "47",
"avg_value": 0.2805429,
"avg_rank": 32.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 9.0,
"hr_rank": "60",
"rbi_value": 39.0,
"rbi_rank": "24",
"tb_value": 106.0,
"tb_rank": "288",
"bb_value": 46.0,
"bb_rank": "5",
"so_value": 65.0,
"so_rank": "37",
"sb_value": 11.0,
"sb_rank": "18",
"obp_value": 0.4014869,
"obp_rank": "5",
"slg_value": 0.479638,
"slg_rank": "36",
"ops_value": 0.8811249,
"ops_rank": 18.0,
"war_value": 2.93,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 216.0,
"k_percent": 24.0,
"bb_percent": 17.0,
"woba": 0.387,
"xwoba": 0.372,
"xba": 0.263,
"xslg": 0.462,
"sweet_spot_percent": 38.1,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 48.1,
"exit_velocity_avg": 91.3,
"launch_angle_avg": 8.2,
"whiff_percent": 20.7,
"swing_percent": 40.8
},
"components": {
"expected_quality": 1.2467,
"regression_edge": -0.4286,
"xwoba_edge": 1.9143,
"xba_edge": 0.6857,
"xslg_edge": 1.2571,
"barrel_edge": 0.2667,
"hard_hit_edge": 1.3214,
"exit_velocity_edge": 1.0,
"sweet_spot_edge": 0.8,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "694192",
"player_name": "Jackson Chourio",
"offense_factor": 1.0323,
"quality_score": 0.4303,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694192",
"espn_id": 4917869,
"player_name": "Jackson Chourio",
"team": "MIL",
"role": "batter",
"espn_rank": 108,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 108,
"gp_value": 29.0,
"gp_rank": "347",
"ab_value": 123.0,
"ab_rank": "249",
"r_value": 19.0,
"r_rank": "194",
"h_value": 36.0,
"h_rank": "197",
"avg_value": 0.2926829,
"avg_rank": null,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 16.0,
"rbi_rank": "231",
"tb_value": 59.0,
"tb_rank": "1171",
"bb_value": 11.0,
"bb_rank": "245",
"so_value": 36.0,
"so_rank": "192",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3507462,
"obp_rank": "-",
"slg_value": 0.4796747,
"slg_rank": "-",
"ops_value": 0.8304209,
"ops_rank": null,
"war_value": 1.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 87.0,
"k_percent": 26.9,
"bb_percent": 8.2,
"woba": 0.364,
"xwoba": 0.344,
"xba": 0.244,
"xslg": 0.497,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 17.2,
"hard_hit_percent": 49.4,
"exit_velocity_avg": 92.7,
"launch_angle_avg": 13.1,
"whiff_percent": 24.4,
"swing_percent": 45.5
},
"components": {
"expected_quality": 1.2049,
"regression_edge": -0.5714,
"xwoba_edge": 1.1143,
"xba_edge": 0.1429,
"xslg_edge": 1.7571,
"barrel_edge": 2.2667,
"hard_hit_edge": 1.5071,
"exit_velocity_edge": 1.56,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "661388",
"player_name": "William Contreras",
"offense_factor": 1.0427,
"quality_score": 0.5695,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "661388",
"espn_id": 39895,
"player_name": "William Contreras",
"team": "MIL",
"role": "batter",
"espn_rank": 98,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 98,
"gp_value": 59.0,
"gp_rank": "132",
"ab_value": 235.0,
"ab_rank": "51",
"r_value": 34.0,
"r_rank": "57",
"h_value": 67.0,
"h_rank": "25",
"avg_value": 0.2851063,
"avg_rank": 28.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 39.0,
"rbi_rank": "24",
"tb_value": 92.0,
"tb_rank": "943",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 33.0,
"so_rank": "215",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3435114,
"obp_rank": "65",
"slg_value": 0.3914893,
"slg_rank": "115",
"ops_value": 0.7350007,
"ops_rank": 96.0,
"war_value": 1.19,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 214.0,
"k_percent": 12.6,
"bb_percent": 8.4,
"woba": 0.325,
"xwoba": 0.335,
"xba": 0.28,
"xslg": 0.433,
"sweet_spot_percent": 29.1,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 41.7,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 11.9,
"whiff_percent": 19.2,
"swing_percent": 47.8
},
"components": {
"expected_quality": 0.6343,
"regression_edge": 0.2857,
"xwoba_edge": 0.8571,
"xba_edge": 1.1714,
"xslg_edge": 0.8429,
"barrel_edge": -0.0444,
"hard_hit_edge": 0.4071,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": -0.7,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "641343",
"player_name": "Jake Bauers",
"offense_factor": 1.0664,
"quality_score": 0.8853,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641343",
"espn_id": 35013,
"player_name": "Jake Bauers",
"team": "MIL",
"role": "batter",
"espn_rank": 78,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 78,
"gp_value": 55.0,
"gp_rank": "164",
"ab_value": 192.0,
"ab_rank": "140",
"r_value": 37.0,
"r_rank": "47",
"h_value": 54.0,
"h_rank": "89",
"avg_value": 0.28125,
"avg_rank": 32.0,
"2b_value": 12.0,
"2b_rank": "54",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 11.0,
"hr_rank": "41",
"rbi_value": 40.0,
"rbi_rank": "19",
"tb_value": 99.0,
"tb_rank": "620",
"bb_value": 27.0,
"bb_rank": "55",
"so_value": 49.0,
"so_rank": "106",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3755656,
"obp_rank": "22",
"slg_value": 0.515625,
"slg_rank": "23",
"ops_value": 0.8911906,
"ops_rank": 16.0,
"war_value": 1.41,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 174.0,
"k_percent": 22.2,
"bb_percent": 12.2,
"woba": 0.386,
"xwoba": 0.365,
"xba": 0.267,
"xslg": 0.485,
"sweet_spot_percent": 30.8,
"barrel_batted_rate": 13.4,
"hard_hit_percent": 54.5,
"exit_velocity_avg": 92.4,
"launch_angle_avg": 8.6,
"whiff_percent": 24.9,
"swing_percent": 41.8
},
"components": {
"expected_quality": 1.3992,
"regression_edge": -0.6,
"xwoba_edge": 1.7143,
"xba_edge": 0.8,
"xslg_edge": 1.5857,
"barrel_edge": 1.4222,
"hard_hit_edge": 2.2357,
"exit_velocity_edge": 1.44,
"sweet_spot_edge": -0.4167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "683734",
"player_name": "Andrew Vaughn",
"offense_factor": 1.0093,
"quality_score": 0.1243,
"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": 174,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 174,
"gp_value": 26.0,
"gp_rank": "359",
"ab_value": 82.0,
"ab_rank": "342",
"r_value": 13.0,
"r_rank": "277",
"h_value": 28.0,
"h_rank": "252",
"avg_value": 0.3414634,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 13.0,
"rbi_rank": "262",
"tb_value": 40.0,
"tb_rank": "1566",
"bb_value": 6.0,
"bb_rank": "335",
"so_value": 10.0,
"so_rank": "421",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.4,
"obp_rank": "-",
"slg_value": 0.4878048,
"slg_rank": "-",
"ops_value": 0.8878048,
"ops_rank": null,
"war_value": 0.62,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 59.0,
"k_percent": 11.1,
"bb_percent": 6.7,
"woba": 0.392,
"xwoba": 0.337,
"xba": 0.294,
"xslg": 0.402,
"sweet_spot_percent": 36.1,
"barrel_batted_rate": 2.8,
"hard_hit_percent": 44.4,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 8.8,
"whiff_percent": 18.8,
"swing_percent": 45.6
},
"components": {
"expected_quality": 0.577,
"regression_edge": -1.5714,
"xwoba_edge": 0.9143,
"xba_edge": 1.5714,
"xslg_edge": 0.4,
"barrel_edge": -0.9333,
"hard_hit_edge": 0.7929,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": 0.4667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "669003",
"player_name": "Garrett Mitchell",
"offense_factor": 1.0333,
"quality_score": 0.4445,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669003",
"espn_id": 4313442,
"player_name": "Garrett Mitchell",
"team": "MIL",
"role": "batter",
"espn_rank": 117,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 117,
"gp_value": 54.0,
"gp_rank": "176",
"ab_value": 164.0,
"ab_rank": "186",
"r_value": 24.0,
"r_rank": "145",
"h_value": 40.0,
"h_rank": "178",
"avg_value": 0.2439024,
"avg_rank": 98.0,
"2b_value": 12.0,
"2b_rank": "54",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 31.0,
"rbi_rank": "68",
"tb_value": 65.0,
"tb_rank": "557",
"bb_value": 28.0,
"bb_rank": "50",
"so_value": 70.0,
"so_rank": "25",
"sb_value": 6.0,
"sb_rank": "68",
"obp_value": 0.3589743,
"obp_rank": "41",
"slg_value": 0.3963414,
"slg_rank": "109",
"ops_value": 0.7553157,
"ops_rank": 83.0,
"war_value": 0.99,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 161.0,
"k_percent": 35.7,
"bb_percent": 14.3,
"woba": 0.339,
"xwoba": 0.334,
"xba": 0.224,
"xslg": 0.406,
"sweet_spot_percent": 30.2,
"barrel_batted_rate": 14.6,
"hard_hit_percent": 51.0,
"exit_velocity_avg": 92.8,
"launch_angle_avg": 4.8,
"whiff_percent": 37.5,
"swing_percent": 41.9
},
"components": {
"expected_quality": 0.7295,
"regression_edge": -0.1429,
"xwoba_edge": 0.8286,
"xba_edge": -0.4286,
"xslg_edge": 0.4571,
"barrel_edge": 1.6889,
"hard_hit_edge": 1.7357,
"exit_velocity_edge": 1.6,
"sweet_spot_edge": -0.5167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "650859",
"player_name": "Luis Rengifo",
"offense_factor": 1.001,
"quality_score": 0.013,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "650859",
"espn_id": 37237,
"player_name": "Luis Rengifo",
"team": "MIL",
"role": "batter",
"espn_rank": 494,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 494,
"gp_value": 52.0,
"gp_rank": "186",
"ab_value": 173.0,
"ab_rank": "174",
"r_value": 16.0,
"r_rank": "230",
"h_value": 35.0,
"h_rank": "209",
"avg_value": 0.2023121,
"avg_rank": 162.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 19.0,
"rbi_rank": "194",
"tb_value": 44.0,
"tb_rank": "1949",
"bb_value": 17.0,
"bb_rank": "161",
"so_value": 20.0,
"so_rank": "331",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.2746113,
"obp_rank": "161",
"slg_value": 0.2543352,
"slg_rank": "172",
"ops_value": 0.5289465,
"ops_rank": 172.0,
"war_value": -0.4,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 163.0,
"k_percent": 10.3,
"bb_percent": 8.7,
"woba": 0.243,
"xwoba": 0.298,
"xba": 0.252,
"xslg": 0.344,
"sweet_spot_percent": 28.0,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 34.4,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 3.9,
"whiff_percent": 18.9,
"swing_percent": 49.9
},
"components": {
"expected_quality": -0.2353,
"regression_edge": 1.5714,
"xwoba_edge": -0.2,
"xba_edge": 0.3714,
"xslg_edge": -0.4286,
"barrel_edge": -0.4222,
"hard_hit_edge": -0.6357,
"exit_velocity_edge": -0.52,
"sweet_spot_edge": -0.8833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "687401",
"player_name": "Joey Ortiz",
"offense_factor": 0.9849,
"quality_score": -0.2019,
"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": 228,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 228,
"gp_value": 54.0,
"gp_rank": "176",
"ab_value": 129.0,
"ab_rank": "241",
"r_value": 17.0,
"r_rank": "217",
"h_value": 25.0,
"h_rank": "269",
"avg_value": 0.1937984,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 14.0,
"rbi_rank": "247",
"tb_value": 32.0,
"tb_rank": "1905",
"bb_value": 20.0,
"bb_rank": "123",
"so_value": 26.0,
"so_rank": "281",
"sb_value": 4.0,
"sb_rank": "108",
"obp_value": 0.2980132,
"obp_rank": "-",
"slg_value": 0.248062,
"slg_rank": "-",
"ops_value": 0.5460752,
"ops_rank": null,
"war_value": 0.32,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 127.0,
"k_percent": 16.9,
"bb_percent": 13.0,
"woba": 0.259,
"xwoba": 0.298,
"xba": 0.224,
"xslg": 0.292,
"sweet_spot_percent": 21.3,
"barrel_batted_rate": 2.8,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 86.7,
"launch_angle_avg": 8.9,
"whiff_percent": 17.4,
"swing_percent": 42.7
},
"components": {
"expected_quality": -0.5881,
"regression_edge": 1.1143,
"xwoba_edge": -0.2,
"xba_edge": -0.4286,
"xslg_edge": -1.1714,
"barrel_edge": -0.9333,
"hard_hit_edge": -0.7929,
"exit_velocity_edge": -0.84,
"sweet_spot_edge": -2.0,
"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 MIL | True | 6 | 0.4392 | 0.7320 | 0.9627 | 1.0531 | 0.9693 | 0.9101 | neutral | 0.2800 | 0.2620 | 31.90 | 7 | 29.50 | 5.10 | 28.50 | |
| Home OAK | True | 78 | -0.1052 | 1 | 1.0089 | 0.9680 | 0.9600 | 1.0282 | neutral | 0.3150 | 0.3340 | 20.30 | 7.10 | 22.80 | 9.40 | 36.30 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away MIL | True | None | 90 | 90.15 | 2164 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0247 | |
| Home OAK | True | None | 88 | 85.63 | 2037 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2285 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0089 |
| home_runs_vs_away_pitcher | 0.9727 |
| home_pitcher_quality_edge | -0.5444 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "605488",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 271.0,
"k_percent": 20.3,
"bb_percent": 7.1,
"woba": 0.334,
"xwoba": 0.315,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 36.3,
"avg_best_speed": 76.7243,
"avg_hyper_speed": 93.4607,
"whiff_percent": 22.8,
"swing_percent": 47.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1513,
"command_and_miss": -0.2171,
"regression_edge": 0.5429,
"xwoba_edge": -0.0143,
"barrel_edge": -0.5111,
"hard_hit_edge": 0.3286,
"whiff_edge": -0.4286,
"bb_edge": 0.5,
"pitch_design_score": -0.2285
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "605488",
"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": 85.63061442528043,
"release_spin_rate": 2037.065200521358,
"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": 85.63061442528043,
"release_spin_rate": 2037.065200521358,
"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.6306,
"release_spin_rate": 2037.0652,
"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.2285,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.6318,
"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.1052,
"sample_weight": 1.0,
"run_prevention_factor": 1.0089,
"strikeout_factor": 0.968,
"walk_factor": 0.96,
"homer_factor": 1.0282,
"woba_minus_xwoba": 0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "605488",
"espn_id": 35397,
"player_name": "Jeffrey Springs",
"team": "ATH",
"role": "pitcher",
"espn_rank": 78,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 78,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 4.0,
"qs_rank": 61,
"era_value": 4.3714,
"era_rank": 55.0,
"w_value": 3.0,
"w_rank": 87,
"l_value": 6.0,
"l_rank": 11,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 70.0,
"ip_rank": 43,
"h_value": 66.0,
"h_rank": 34,
"er_value": 34.0,
"er_rank": 33,
"hr_value": 14.0,
"hr_rank": 7,
"bb_value": 21.0,
"bb_rank": 75,
"k_value": 60.0,
"k_rank": 62,
"k_per_9_value": 7.714286,
"k_per_9_rank": 38,
"whip_value": 1.2428,
"whip_rank": 43.0,
"war_value": 1.04,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "690986",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 183.0,
"k_percent": 31.9,
"bb_percent": 7.0,
"woba": 0.262,
"xwoba": 0.28,
"sweet_spot_percent": 37.2,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 28.5,
"avg_best_speed": 78.8625,
"avg_hyper_speed": 93.1808,
"whiff_percent": 29.5,
"swing_percent": 50.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.7565,
"command_and_miss": 0.8686,
"regression_edge": -0.5143,
"xwoba_edge": 0.9857,
"barrel_edge": 0.4444,
"hard_hit_edge": 1.4429,
"whiff_edge": 0.5286,
"bb_edge": 0.525,
"pitch_design_score": 0.0247
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "690986",
"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": 90.1519778270285,
"release_spin_rate": 2164.262089708526,
"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": 90.1519778270285,
"release_spin_rate": 2164.262089708526,
"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.152,
"release_spin_rate": 2164.2621,
"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.0247,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1767,
"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.4392,
"sample_weight": 0.732,
"run_prevention_factor": 0.9627,
"strikeout_factor": 1.0531,
"walk_factor": 0.9693,
"homer_factor": 0.9101,
"woba_minus_xwoba": -0.018,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "690986",
"espn_id": 4683375,
"player_name": "Kyle Harrison",
"team": "MIL",
"role": "pitcher",
"espn_rank": 6,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 6,
"gp_value": 11.0,
"gp_rank": 347,
"gs_value": 11.0,
"gs_rank": 82,
"qs_value": 4.0,
"qs_rank": 61,
"era_value": 1.5697,
"era_rank": null,
"w_value": 7.0,
"w_rank": 6,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 57.1,
"ip_rank": 102,
"h_value": 43.0,
"h_rank": 121,
"er_value": 10.0,
"er_rank": 285,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 16.0,
"bb_rank": 147,
"k_value": 73.0,
"k_rank": 29,
"k_per_9_value": 11.459302,
"k_per_9_rank": 7,
"whip_value": 1.029,
"whip_rank": null,
"war_value": 2.72,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0089,
"home_runs_vs_away_pitcher": 0.9727,
"home_pitcher_quality_edge": -0.5444
},
"score_before": {
"away_runs": 5.2869,
"home_runs": 0.3336
},
"score_after": {
"away_runs": 5.334,
"home_runs": 0.3245,
"home_win_probability": 0.08
},
"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 MIL | 22-33 | 0.400 | 1.60 | 2.60 | -53 | cold | strong | |
| Home OAK | 15-44 | 0.254 | 1 | 3.80 | -162 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away MIL | 40-23 | 0.635 | 105 | 1.667 | True |
| Home OAK | 31-34 | 0.477 | -43 | -0.662 | True |
| Signal | - | - | -2.328 | -2.565 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target MIL | - | - | 5 | - | - | - | - |
| Game target OAK | - | - | 1 | - | - | - | - |
| Player finalized MIL | 55 | 16 | 10 | 0 | 10 | 8 | 13 |
| Player finalized OAK | 52 | 12 | 6 | 0 | 5 | 6 | 16 |
| Player model fractional MIL | 54.64 | 14.50 | 9.55 | 1.71 | 9.26 | 6.64 | 12.29 |
| Player model fractional OAK | 52.23 | 11.37 | 6.33 | 2.00 | 5.88 | 5.75 | 15.79 |
| Simulation box MIL | 34 | 8 | 5 | 1 | 5 | 1 | 5 |
| Simulation box OAK | 34 | 7 | 2 | 1 | 2 | 0 | 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 MIL | Starter | Kyle Harrison | 6 | 1 | 7 | 5 | 0 | 2.25 | 1.09 | True |
| Away MIL | Middle Reliever | Aaron Ashby | 1 | 0 | 1 | 0 | 0 | 3.25 | 1.27 | True |
| Away MIL | Middle Reliever | Abner Uribe | 1 | 1 | 0 | 2 | 0 | 3.81 | 1.36 | True |
| Away MIL | Middle Reliever | Trevor Megill | 1 | 0 | 0 | 0 | 0 | 3.81 | 1.16 | True |
| Home OAK | Starter | Jeffrey Springs | 5.10 | 5 | 3 | 7 | 1 | 4.90 | 1.37 | True |
| Home OAK | Middle Reliever | Hogan Harris | 1 | 0 | 1 | 0 | 0 | 2.64 | 1.14 | True |
| Home OAK | Middle Reliever | Mark Leiter Jr. | 1 | 0 | 0 | 0 | 0 | 2.61 | 0.97 | True |
| Home OAK | Middle Reliever | Scott Barlow | 1 | 0 | 1 | 1 | 0 | 4.81 | 1.58 | True |
| Home OAK | Middle Reliever | Justin Sterner | 0.20 | 0 | 0 | 0 | 0 | 2.51 | 0.73 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | MIL | pitcher | Starter | Kyle Harrison | better | 2 | 1 | 1 | 2 | 0 | predicted_SO | 4.0000 | boost | better |
| home | OAK | batter | RF | Colby Thomas | worse | 11 | 3 | 8 | 4 | 7 | predicted_H | 2.4300 | boost | better |
| away | MIL | pitcher | Middle Reliever | Abner Uribe | worse | 2 | 1 | 1 | 0 | 2 | predicted_SO | -2.0000 | deboost | worse |
| away | MIL | pitcher | Middle Reliever | Trevor Megill | worse | 1 | 0 | 1 | 0 | 1 | predicted_SO | -2.0000 | deboost | worse |
| home | OAK | batter | SS | Alika Williams | better | 9 | 4 | 5 | 5 | 4 | predicted_RBI | 1.8900 | boost | better |
| home | OAK | batter | 3B | Max Muncy | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -1.4530 | deboost | better |
| away | MIL | batter | LF | Jackson Chourio | better | 10 | 6 | 4 | 7 | 3 | predicted_SO | -1.3780 | deboost | better |
| away | MIL | batter | CF | Garrett Mitchell | worse | 11 | 4 | 7 | 5 | 6 | predicted_SO | -1.3760 | deboost | better |
| away | MIL | batter | 2B | Brice Turang | better | 11 | 5 | 6 | 6 | 5 | predicted_RBI | 1.3300 | boost | better |
| away | MIL | batter | 1B | Andrew Vaughn | better | 11 | 10 | 1 | 9 | 2 | predicted_H | 1.1100 | boost | better |
| home | OAK | batter | C | Shea Langeliers | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 1.1010 | boost | worse |
| away | MIL | batter | RF | Jake Bauers | worse | 11 | 5 | 6 | 4 | 7 | predicted_SO | 1.0850 | boost | worse |
| home | OAK | batter | 2B | Zack Gelof | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 1.0140 | boost | worse |
| away | MIL | batter | C | William Contreras | better | 10 | 6 | 4 | 7 | 3 | predicted_H | 0.9900 | boost | better |
| home | OAK | batter | 1B | Nick Kurtz | worse | 9 | 1 | 8 | 2 | 7 | predicted_BB | -0.9570 | deboost | worse |
| home | OAK | batter | DH | Brent Rooker | worse | 9 | 0 | 9 | 1 | 8 | predicted_H | -0.9200 | deboost | worse |
| home | OAK | batter | LF | Tyler Soderstrom | worse | 11 | 3 | 8 | 2 | 9 | predicted_H | -0.9000 | deboost | worse |
| away | MIL | batter | SS | Joey Ortiz | worse | 10 | 3 | 7 | 2 | 8 | predicted_AB | 0.8600 | boost | better |
| away | MIL | batter | 3B | Luis Rengifo | worse | 10 | 1 | 9 | 2 | 8 | predicted_H | 0.7300 | boost | better |
| away | MIL | batter | DH | Christian Yelich | worse | 11 | 4 | 7 | 5 | 6 | predicted_RBI | -0.5300 | deboost | worse |
| home | OAK | batter | CF | Henry Bolte | worse | 10 | 2 | 8 | 2 | 8 | predicted_AB | 0.4720 | boost | better |
| home | OAK | pitcher | Middle Reliever | Justin Sterner | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | OAK | pitcher | Starter | Jeffrey Springs | 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 | Kyle Harrison |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.4392 |
| ESPN Rank | 6 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0247 |
| Avg Velo | 90.1520 |
| Avg Spin | 2164.2621 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 1 |
| Pre H | 5 |
| Pre BB | 0 |
| Pre SO | 7 |
| Season ERA | 1.5698 |
| Season WHIP | 1.0291 |
| Role Avg IP | 5.2120 |
| Recent Avg IP | 5.5330 |
| Last Start IP | 5.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"opponent": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"edges": {
"quality_edge": 0.4741,
"offense_edge": 0.1401,
"opponent_offense_edge": -0.0315,
"defense_strength": 0.2453,
"opponent_defense_weakness": 0.0905,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0276,
"run_prevention": 0.9467,
"strikeout": 1.0167
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "690986",
"profile": {
"available": true,
"pitcher_id": "690986",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 183.0,
"k_percent": 31.9,
"bb_percent": 7.0,
"woba": 0.262,
"xwoba": 0.28,
"sweet_spot_percent": 37.2,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 28.5,
"avg_best_speed": 78.8625,
"avg_hyper_speed": 93.1808,
"whiff_percent": 29.5,
"swing_percent": 50.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.7565,
"command_and_miss": 0.8686,
"regression_edge": -0.5143,
"xwoba_edge": 0.9857,
"barrel_edge": 0.4444,
"hard_hit_edge": 1.4429,
"whiff_edge": 0.5286,
"bb_edge": 0.525,
"pitch_design_score": 0.0247
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "690986",
"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": 90.1519778270285,
"release_spin_rate": 2164.262089708526,
"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": 90.1519778270285,
"release_spin_rate": 2164.262089708526,
"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.152,
"release_spin_rate": 2164.2621,
"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.0247,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1767,
"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.4392,
"sample_weight": 0.732,
"run_prevention_factor": 0.9627,
"strikeout_factor": 1.0531,
"walk_factor": 0.9693,
"homer_factor": 0.9101,
"woba_minus_xwoba": -0.018,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "690986",
"espn_id": 4683375,
"player_name": "Kyle Harrison",
"team": "MIL",
"role": "pitcher",
"espn_rank": 6,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 6,
"gp_value": 11.0,
"gp_rank": 347,
"gs_value": 11.0,
"gs_rank": 82,
"qs_value": 4.0,
"qs_rank": 61,
"era_value": 1.5697,
"era_rank": null,
"w_value": 7.0,
"w_rank": 6,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 57.1,
"ip_rank": 102,
"h_value": 43.0,
"h_rank": 121,
"er_value": 10.0,
"er_rank": 285,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 16.0,
"bb_rank": 147,
"k_value": 73.0,
"k_rank": 29,
"k_per_9_value": 11.459302,
"k_per_9_rank": 7,
"whip_value": 1.029,
"whip_rank": null,
"war_value": 2.72,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9727,
"adjusted": 1
},
"predicted_H": {
"original": 4.0,
"factor": 0.9727,
"adjusted": 4
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9775,
"adjusted": 1
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9342,
"adjusted": 0
},
"predicted_SO": {
"original": 7.0,
"factor": 1.0389,
"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": 52.1,
"ER": 9,
"H": 39,
"BB": 15,
"SO": 65,
"HR": 3,
"ERA": 1.5477707006369423,
"WHIP": 1.0318471337579616,
"K9": 11.178343949044583,
"HR9": 0.5159235668789808,
"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-02T00:00:00"
}{
"available": true,
"pitcher_id": "690986",
"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": 90.1519778270285,
"release_spin_rate": 2164.262089708526,
"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": 90.1519778270285,
"release_spin_rate": 2164.262089708526,
"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.152,
"release_spin_rate": 2164.2621,
"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.0247,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1767,
"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": 11.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6875,
"prior_weight": 0.3125
},
"role": "pitcher",
"player_id": "690986",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 11,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 27.2,
"ER": 3.0,
"R": 3.0,
"H": 19.0,
"BB": 7.0,
"SO": 38.0,
"HR": 2.0,
"BF": 109.0,
"Pitches": 468.0
},
"per_game": {
"IP": 5.2,
"ER": 0.6,
"R": 0.6,
"H": 3.8,
"BB": 1.4,
"SO": 7.6,
"HR": 0.4,
"BF": 21.8,
"Pitches": 93.6
},
"rates": {
"ERA": 0.9759,
"WHIP": 0.9398,
"ER_per_IP": 0.10843,
"H_per_IP": 0.68675,
"BB_per_IP": 0.25301,
"SO_per_IP": 1.37349,
"HR_per_IP": 0.07229
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 52.1,
"ER": 9.0,
"R": 9.0,
"H": 39.0,
"BB": 15.0,
"SO": 65.0,
"HR": 3.0,
"BF": 209.0,
"Pitches": 900.0
},
"per_game": {
"IP": 5.1,
"ER": 0.9,
"R": 0.9,
"H": 3.9,
"BB": 1.5,
"SO": 6.5,
"HR": 0.3,
"BF": 20.9,
"Pitches": 90.0
},
"rates": {
"ERA": 1.5478,
"WHIP": 1.0318,
"ER_per_IP": 0.17197,
"H_per_IP": 0.74522,
"BB_per_IP": 0.28662,
"SO_per_IP": 1.24204,
"HR_per_IP": 0.05732
}
},
"season": {
"games": 11,
"totals": {
"IP": 57.1,
"ER": 10.0,
"R": 10.0,
"H": 43.0,
"BB": 16.0,
"SO": 73.0,
"HR": 4.0,
"BF": 229.0,
"Pitches": 987.0
},
"per_game": {
"IP": 5.1,
"ER": 0.9091,
"R": 0.9091,
"H": 3.9091,
"BB": 1.4545,
"SO": 6.6364,
"HR": 0.3636,
"BF": 20.8182,
"Pitches": 89.7273
},
"rates": {
"ERA": 1.5698,
"WHIP": 1.0291,
"ER_per_IP": 0.17442,
"H_per_IP": 0.75,
"BB_per_IP": 0.27907,
"SO_per_IP": 1.27326,
"HR_per_IP": 0.06977
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 1.414,
"predicted_H": 4.483,
"predicted_BB": 1.691,
"predicted_SO": 6.722,
"predicted_HR": 0.504,
"predicted_ERA": 2.2538,
"predicted_WHIP": 1.0936
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.482,
"form_weight": 0.518,
"form_reliability": 0.6875,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 11.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6875,
"prior_weight": 0.3125
},
"applied_metrics": {
"predicted_IP": {
"model": 6.0,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 1.414,
"final": 1.6965,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 4.483,
"final": 4.7322,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 1.691,
"final": 0.8759,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 6.722,
"final": 4.9279,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.504,
"final": 0.7431,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.2538,
"final": 2.2538,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0936,
"final": 1.0936,
"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.4035 |
| ESPN Rank | 112 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1215 |
| Avg Velo | 91.8802 |
| Avg Spin | 2270.2811 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.3478 |
| Season WHIP | 1.3304 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"opponent": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"edges": {
"quality_edge": 0.4741,
"offense_edge": 0.1401,
"opponent_offense_edge": -0.0315,
"defense_strength": 0.2453,
"opponent_defense_weakness": 0.0905,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0276,
"run_prevention": 0.9467,
"strikeout": 1.0167
},
"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": 32.5,
"bb_percent": 11.7,
"woba": 0.287,
"xwoba": 0.27,
"sweet_spot_percent": 28.1,
"barrel_batted_rate": 4.5,
"hard_hit_percent": 41.6,
"avg_best_speed": 75.998,
"avg_hyper_speed": 94.6489,
"whiff_percent": 32.8,
"swing_percent": 41.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.7409,
"command_and_miss": 0.8371,
"regression_edge": 0.4857,
"xwoba_edge": 1.2714,
"barrel_edge": 0.5778,
"hard_hit_edge": -0.4286,
"whiff_edge": 1.0,
"bb_edge": -0.65,
"pitch_design_score": 0.1215
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676879",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 27,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 27,
"pitch_usage": 0.0,
"release_speed": 91.88023970038545,
"release_spin_rate": 2270.2810799686545,
"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": 27,
"pitch_usage": 0.0,
"release_speed": 91.88023970038545,
"release_spin_rate": 2270.2810799686545,
"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.8802,
"release_spin_rate": 2270.2811,
"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.1215,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.868,
"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.4035,
"sample_weight": 0.584,
"run_prevention_factor": 0.9657,
"strikeout_factor": 1.0554,
"walk_factor": 1.0304,
"homer_factor": 0.9607,
"woba_minus_xwoba": 0.017,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676879",
"espn_id": 41325,
"player_name": "Aaron Ashby",
"team": "MIL",
"role": "pitcher",
"espn_rank": 112,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 112,
"gp_value": 28.0,
"gp_rank": 39,
"gs_value": 1.0,
"gs_rank": 229,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.3478,
"era_rank": null,
"w_value": 9.0,
"w_rank": 1,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 2.0,
"hld_rank": 158,
"ip_value": 38.1,
"ip_rank": 152,
"h_value": 32.0,
"h_rank": 164,
"er_value": 10.0,
"er_rank": 285,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 53.0,
"k_rank": 80,
"k_per_9_value": 12.443479,
"k_per_9_rank": 14,
"whip_value": 1.3304,
"whip_rank": null,
"war_value": 0.86,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.98,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.98,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0178,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.977,
"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": 13.1,
"ER": 4,
"H": 14,
"BB": 4,
"SO": 15,
"HR": 0,
"ERA": 2.7,
"WHIP": 1.35,
"K9": 10.125000000000002,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "676879",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 27,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 27,
"pitch_usage": 0.0,
"release_speed": 91.88023970038545,
"release_spin_rate": 2270.2810799686545,
"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": 27,
"pitch_usage": 0.0,
"release_speed": 91.88023970038545,
"release_spin_rate": 2270.2810799686545,
"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.8802,
"release_spin_rate": 2270.2811,
"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.1215,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.868,
"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": 7.57,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6022,
"prior_weight": 0.3978
},
"role": "pitcher",
"player_id": "676879",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 7.1,
"ER": 2.0,
"R": 3.0,
"H": 6.0,
"BB": 2.0,
"SO": 7.0,
"HR": 0.0,
"BF": 29.0,
"Pitches": 113.0
},
"per_game": {
"IP": 1.1,
"ER": 0.4,
"R": 0.6,
"H": 1.2,
"BB": 0.4,
"SO": 1.4,
"HR": 0.0,
"BF": 5.8,
"Pitches": 22.6
},
"rates": {
"ERA": 2.4545,
"WHIP": 1.0909,
"ER_per_IP": 0.27273,
"H_per_IP": 0.81818,
"BB_per_IP": 0.27273,
"SO_per_IP": 0.95455,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.1,
"ER": 4.0,
"R": 6.0,
"H": 14.0,
"BB": 4.0,
"SO": 15.0,
"HR": 0.0,
"BF": 57.0,
"Pitches": 226.0
},
"per_game": {
"IP": 1.1,
"ER": 0.4,
"R": 0.6,
"H": 1.4,
"BB": 0.4,
"SO": 1.5,
"HR": 0.0,
"BF": 5.7,
"Pitches": 22.6
},
"rates": {
"ERA": 2.7,
"WHIP": 1.35,
"ER_per_IP": 0.3,
"H_per_IP": 1.05,
"BB_per_IP": 0.3,
"SO_per_IP": 1.125,
"HR_per_IP": 0.0
}
},
"season": {
"games": 28,
"totals": {
"IP": 38.1,
"ER": 10.0,
"R": 13.0,
"H": 32.0,
"BB": 19.0,
"SO": 53.0,
"HR": 1.0,
"BF": 163.0,
"Pitches": 652.0
},
"per_game": {
"IP": 1.1,
"ER": 0.3571,
"R": 0.4643,
"H": 1.1429,
"BB": 0.6786,
"SO": 1.8929,
"HR": 0.0357,
"BF": 5.8214,
"Pitches": 23.2857
},
"rates": {
"ERA": 2.3478,
"WHIP": 1.3304,
"ER_per_IP": 0.26087,
"H_per_IP": 0.83478,
"BB_per_IP": 0.49565,
"SO_per_IP": 1.38261,
"HR_per_IP": 0.02609
}
}
},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.434,
"predicted_H": 1.11,
"predicted_BB": 0.41,
"predicted_SO": 1.242,
"predicted_HR": 0.07,
"predicted_ERA": 3.2528,
"predicted_WHIP": 1.2663
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5181,
"form_weight": 0.4819,
"form_reliability": 0.6022,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 7.57,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6022,
"prior_weight": 0.3978
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.1,
"final": 1.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.434,
"final": 0.2092,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.11,
"final": 0.5349,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.41,
"final": 0.1976,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.242,
"final": 1.1166,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.07,
"final": 0.0337,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2528,
"final": 3.2528,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2663,
"final": 1.2663,
"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.2015 |
| ESPN Rank | 321 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2540 |
| Avg Velo | 94.2464 |
| Avg Spin | 2385.9900 |
| 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 | 4.0299 |
| Season WHIP | 1.2537 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"opponent": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"edges": {
"quality_edge": 0.4741,
"offense_edge": 0.1401,
"opponent_offense_edge": -0.0315,
"defense_strength": 0.2453,
"opponent_defense_weakness": 0.0905,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0276,
"run_prevention": 0.9467,
"strikeout": 1.0167
},
"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": 24.2,
"bb_percent": 9.5,
"woba": 0.277,
"xwoba": 0.279,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 3.2,
"hard_hit_percent": 33.3,
"avg_best_speed": 77.5127,
"avg_hyper_speed": 93.0546,
"whiff_percent": 24.2,
"swing_percent": 41.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.7812,
"command_and_miss": -0.0164,
"regression_edge": -0.0571,
"xwoba_edge": 1.0143,
"barrel_edge": 0.8667,
"hard_hit_edge": 0.7571,
"whiff_edge": -0.2286,
"bb_edge": -0.1,
"pitch_design_score": 0.254
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "682842",
"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.2464432072474,
"release_spin_rate": 2385.98997542464,
"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.2464432072474,
"release_spin_rate": 2385.98997542464,
"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.2464,
"release_spin_rate": 2385.99,
"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.254,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.8145,
"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.2015,
"sample_weight": 0.45,
"run_prevention_factor": 0.9829,
"strikeout_factor": 0.9992,
"walk_factor": 1.0036,
"homer_factor": 0.9415,
"woba_minus_xwoba": -0.002,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682842",
"espn_id": 4917865,
"player_name": "Abner Uribe",
"team": "MIL",
"role": "pitcher",
"espn_rank": 321,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 321,
"gp_value": 24.0,
"gp_rank": 109,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.0298,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 5.0,
"sv_rank": 24,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 22.1,
"ip_rank": 320,
"h_value": 19.0,
"h_rank": 301,
"er_value": 10.0,
"er_rank": 285,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 9.0,
"bb_rank": 298,
"k_value": 23.0,
"k_rank": 286,
"k_per_9_value": 9.268657,
"k_per_9_rank": 24,
"whip_value": 1.2537,
"whip_rank": null,
"war_value": 0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9923,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9923,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0016,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9737,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9996,
"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": 6,
"SO": 9,
"HR": 1,
"ERA": 4.5,
"WHIP": 1.5,
"K9": 8.1,
"HR9": 0.9,
"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-02T00:00:00"
}{
"available": true,
"pitcher_id": "682842",
"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.2464432072474,
"release_spin_rate": 2385.98997542464,
"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.2464432072474,
"release_spin_rate": 2385.98997542464,
"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.2464,
"release_spin_rate": 2385.99,
"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.254,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.8145,
"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.41,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4687,
"prior_weight": 0.5313
},
"role": "pitcher",
"player_id": "682842",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 23.0,
"Pitches": 82.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 4.6,
"Pitches": 16.4
},
"rates": {
"ERA": 1.8,
"WHIP": 1.4,
"ER_per_IP": 0.2,
"H_per_IP": 1.0,
"BB_per_IP": 0.4,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 5.0,
"R": 5.0,
"H": 9.0,
"BB": 6.0,
"SO": 9.0,
"HR": 1.0,
"BF": 45.0,
"Pitches": 160.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.9,
"BB": 0.6,
"SO": 0.9,
"HR": 0.1,
"BF": 4.5,
"Pitches": 16.0
},
"rates": {
"ERA": 4.5,
"WHIP": 1.5,
"ER_per_IP": 0.5,
"H_per_IP": 0.9,
"BB_per_IP": 0.6,
"SO_per_IP": 0.9,
"HR_per_IP": 0.1
}
},
"season": {
"games": 24,
"totals": {
"IP": 22.1,
"ER": 10.0,
"R": 10.0,
"H": 19.0,
"BB": 9.0,
"SO": 23.0,
"HR": 2.0,
"BF": 95.0,
"Pitches": 363.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4167,
"R": 0.4167,
"H": 0.7917,
"BB": 0.375,
"SO": 0.9583,
"HR": 0.0833,
"BF": 3.9583,
"Pitches": 15.125
},
"rates": {
"ERA": 4.0299,
"WHIP": 1.2537,
"ER_per_IP": 0.44776,
"H_per_IP": 0.85075,
"BB_per_IP": 0.40299,
"SO_per_IP": 1.02985,
"HR_per_IP": 0.08955
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.424,
"predicted_H": 0.947,
"predicted_BB": 0.414,
"predicted_SO": 0.952,
"predicted_HR": 0.099,
"predicted_ERA": 3.8139,
"predicted_WHIP": 1.3612
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5745,
"form_weight": 0.4255,
"form_reliability": 0.4687,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.41,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4687,
"prior_weight": 0.5313
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.424,
"final": 0.1804,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.947,
"final": 1.5519,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.414,
"final": 0.1762,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.952,
"final": 1.554,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.099,
"final": 0.0421,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8139,
"final": 3.8139,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3612,
"final": 1.3612,
"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.3238 |
| ESPN Rank | 438 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2140 |
| Avg Velo | 93.5312 |
| Avg Spin | 2517.8841 |
| 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 | 3.1304 |
| Season WHIP | 1.0435 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"opponent": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"edges": {
"quality_edge": 0.4741,
"offense_edge": 0.1401,
"opponent_offense_edge": -0.0315,
"defense_strength": 0.2453,
"opponent_defense_weakness": 0.0905,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0276,
"run_prevention": 0.9467,
"strikeout": 1.0167
},
"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": 29.9,
"bb_percent": 7.2,
"woba": 0.258,
"xwoba": 0.261,
"sweet_spot_percent": 28.3,
"barrel_batted_rate": 5.0,
"hard_hit_percent": 43.3,
"avg_best_speed": 81.0349,
"avg_hyper_speed": 94.456,
"whiff_percent": 34.8,
"swing_percent": 51.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8078,
"command_and_miss": 0.995,
"regression_edge": -0.0857,
"xwoba_edge": 1.5286,
"barrel_edge": 0.4667,
"hard_hit_edge": -0.6714,
"whiff_edge": 1.2857,
"bb_edge": 0.475,
"pitch_design_score": 0.214
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656730",
"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": 93.53119083694084,
"release_spin_rate": 2517.884055250305,
"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": 93.53119083694084,
"release_spin_rate": 2517.884055250305,
"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.5312,
"release_spin_rate": 2517.8841,
"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.214,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.5284,
"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.3238,
"sample_weight": 0.45,
"run_prevention_factor": 0.9725,
"strikeout_factor": 1.0411,
"walk_factor": 0.9829,
"homer_factor": 0.9747,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656730",
"espn_id": 40080,
"player_name": "Trevor Megill",
"team": "MIL",
"role": "pitcher",
"espn_rank": 438,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 438,
"gp_value": 24.0,
"gp_rank": 109,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.6956,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 8.0,
"sv_rank": 15,
"hld_value": 6.0,
"hld_rank": 61,
"ip_value": 23.0,
"ip_rank": 313,
"h_value": 19.0,
"h_rank": 301,
"er_value": 12.0,
"er_rank": 234,
"hr_value": 0.0,
"hr_rank": 552,
"bb_value": 7.0,
"bb_rank": 358,
"k_value": 29.0,
"k_rank": 218,
"k_per_9_value": 11.347826,
"k_per_9_rank": 18,
"whip_value": 1.1304,
"whip_rank": null,
"war_value": -0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9876,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9876,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9923,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9886,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0185,
"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": 7,
"BB": 2,
"SO": 14,
"HR": 0,
"ERA": 2.7,
"WHIP": 0.9,
"K9": 12.6,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "656730",
"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": 93.53119083694084,
"release_spin_rate": 2517.884055250305,
"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": 93.53119083694084,
"release_spin_rate": 2517.884055250305,
"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.5312,
"release_spin_rate": 2517.8841,
"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.214,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.5284,
"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.542,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.476,
"prior_weight": 0.524
},
"role": "pitcher",
"player_id": "656730",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 23,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 1.0,
"SO": 7.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 65.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.2,
"SO": 1.4,
"HR": 0.0,
"BF": 4.0,
"Pitches": 13.0
},
"rates": {
"ERA": 3.6,
"WHIP": 1.0,
"ER_per_IP": 0.4,
"H_per_IP": 0.8,
"BB_per_IP": 0.2,
"SO_per_IP": 1.4,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 3.0,
"R": 3.0,
"H": 7.0,
"BB": 2.0,
"SO": 14.0,
"HR": 0.0,
"BF": 39.0,
"Pitches": 139.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.7,
"BB": 0.2,
"SO": 1.4,
"HR": 0.0,
"BF": 3.9,
"Pitches": 13.9
},
"rates": {
"ERA": 2.7,
"WHIP": 0.9,
"ER_per_IP": 0.3,
"H_per_IP": 0.7,
"BB_per_IP": 0.2,
"SO_per_IP": 1.4,
"HR_per_IP": 0.0
}
},
"season": {
"games": 23,
"totals": {
"IP": 23.0,
"ER": 8.0,
"R": 9.0,
"H": 17.0,
"BB": 7.0,
"SO": 29.0,
"HR": 0.0,
"BF": 92.0,
"Pitches": 356.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3478,
"R": 0.3913,
"H": 0.7391,
"BB": 0.3043,
"SO": 1.2609,
"HR": 0.0,
"BF": 4.0,
"Pitches": 15.4783
},
"rates": {
"ERA": 3.1304,
"WHIP": 1.0435,
"ER_per_IP": 0.34783,
"H_per_IP": 0.73913,
"BB_per_IP": 0.30435,
"SO_per_IP": 1.26087,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.423,
"predicted_H": 0.86,
"predicted_BB": 0.296,
"predicted_SO": 1.143,
"predicted_HR": 0.073,
"predicted_ERA": 3.8054,
"predicted_WHIP": 1.1562
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5714,
"form_weight": 0.4286,
"form_reliability": 0.476,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.542,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.476,
"prior_weight": 0.524
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.423,
"final": 0.1813,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.86,
"final": 0.3686,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.296,
"final": 0.1269,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.143,
"final": 1.6327,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.073,
"final": 0.0313,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8054,
"final": 3.8054,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1562,
"final": 1.1562,
"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.255 | 0.000 | 0.000 | Hitting_2B | 0.255 | 0.000 | -0.255 | 0.000 |
| predicted_3B | 0.047 | 0.000 | 0.000 | Hitting_3B | 0.047 | 0.000 | -0.047 | 0.000 |
| predicted_AB | 4.390 | 4.000 | 6.000 | Hitting_AB | 3.906 | 5.000 | 0.094 | -1.000 |
| predicted_AVG | 0.244 | 0.250 | 0.333 | Hitting_AVG | 0.292 | 0.400 | -0.042 | -0.150 |
| predicted_BB | 0.387 | 0.000 | 1.000 | Hitting_BB | 0.387 | 1.000 | -0.387 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.070 | 1.000 | 2.000 | Hitting_H | 1.142 | 2.000 | -0.142 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.142 | 0.000 | -0.142 | 0.000 |
| predicted_OBP | 0.347 | 0.400 | 0.429 | Hitting_OBP | 0.357 | 0.500 | 0.043 | -0.100 |
| predicted_R | 0.689 | 1.000 | 1.000 | Hitting_R | 0.689 | 0.000 | 0.311 | 1.000 |
| predicted_RBI | 0.530 | 0.000 | 1.000 | Hitting_RBI | 0.594 | 0.000 | -0.594 | 0.000 |
| predicted_SLG | 0.402 | 0.250 | 0.333 | Hitting_SLG | 0.490 | 0.400 | -0.240 | -0.150 |
| predicted_SO | 1.113 | 1.000 | 2.000 | Hitting_SO | 1.113 | 2.000 | -0.113 | -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 | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_R: 0.6890 -> 1.0000 (boost 0.3110, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.3900 -> 6.3446 (boost 1.9546, 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 | 5 | 0 | 5 | 0 | predicted_R: 1.1404 -> 1.2387 (boost 0.0983, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 3 | 6 | predicted_BB: 0.6678 -> 1.0000 (boost 0.3322, better) | predicted_2B: 0.3980 -> 0.0000 (deboost -0.3980, worse) | AB rounded to 6 (raw=6.34), rates preserved: AVG=0.287 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2387 -> 1.0000 (deboost -0.2387, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3552 -> 0.4290 (boost 0.0738, better) | predicted_SLG: 0.4409 -> 0.3330 (deboost -0.1079, 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_HBP: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4409 (boost 0.1079, better) | predicted_OBP: 0.4290 -> 0.3552 (deboost -0.0738, worse) | 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.255,
"predicted_3B": 0.047,
"predicted_AB": 4.39,
"predicted_AVG": 0.244,
"predicted_BB": 0.387,
"predicted_H": 1.07,
"predicted_HR": 0.11,
"predicted_OBP": 0.347,
"predicted_R": 0.689,
"predicted_RBI": 0.53,
"predicted_SLG": 0.402,
"predicted_SO": 1.113
},
"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.398,
"predicted_3B": 0.0539,
"predicted_AB": 6.3446,
"predicted_AVG": 0.2653,
"predicted_BB": 0.6548,
"predicted_H": 1.7374,
"predicted_HBP": 0.133,
"predicted_HR": 0.1489,
"predicted_OBP": 0.3581,
"predicted_R": 1.1404,
"predicted_RBI": 0.8138,
"predicted_SLG": 0.4186,
"predicted_SO": 1.808
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.255,
"after": 0.398,
"delta": 0.143,
"percent_delta": 0.5608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.047,
"after": 0.0539,
"delta": 0.0069,
"percent_delta": 0.1468,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.39,
"after": 6.3446,
"delta": 1.9546,
"percent_delta": 0.4452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2653,
"delta": 0.0213,
"percent_delta": 0.0873,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.387,
"after": 0.6548,
"delta": 0.2678,
"percent_delta": 0.692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.7374,
"delta": 0.6674,
"percent_delta": 0.6237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1489,
"delta": 0.0389,
"percent_delta": 0.3536,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3581,
"delta": 0.0111,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.689,
"after": 1.1404,
"delta": 0.4514,
"percent_delta": 0.6552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.8138,
"delta": 0.2838,
"percent_delta": 0.5355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.402,
"after": 0.4186,
"delta": 0.0166,
"percent_delta": 0.0413,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.113,
"after": 1.808,
"delta": 0.695,
"percent_delta": 0.6244,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.39,
"after": 6.3446,
"delta": 1.9546,
"percent_delta": 0.4452,
"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": 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.398,
"predicted_3B": 0.0539,
"predicted_AB": 6.3446,
"predicted_AVG": 0.2873,
"predicted_BB": 0.6678,
"predicted_H": 1.8229,
"predicted_HBP": 0.133,
"predicted_HR": 0.1563,
"predicted_OBP": 0.3552,
"predicted_R": 1.2387,
"predicted_RBI": 0.8839,
"predicted_SLG": 0.4409,
"predicted_SO": 1.7722
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.398,
"after": 0.398,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0539,
"after": 0.0539,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.3446,
"after": 6.3446,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2653,
"after": 0.2873,
"delta": 0.022,
"percent_delta": 0.0829,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6548,
"after": 0.6678,
"delta": 0.013,
"percent_delta": 0.0199,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7374,
"after": 1.8229,
"delta": 0.0855,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.133,
"after": 0.133,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1489,
"after": 0.1563,
"delta": 0.0074,
"percent_delta": 0.0497,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3581,
"after": 0.3552,
"delta": -0.0029,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.1404,
"after": 1.2387,
"delta": 0.0983,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8138,
"after": 0.8839,
"delta": 0.0701,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4186,
"after": 0.4409,
"delta": 0.0223,
"percent_delta": 0.0533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.808,
"after": 1.7722,
"delta": -0.0358,
"percent_delta": -0.0198,
"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_R",
"before": 1.1404,
"after": 1.2387,
"delta": 0.0983,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.34), rates preserved: AVG=0.287 HR/AB=0.025",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.398,
"after": 0.0,
"delta": -0.398,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0539,
"after": 0.0,
"delta": -0.0539,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.3446,
"after": 6.0,
"delta": -0.3446,
"percent_delta": -0.0543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6678,
"after": 1.0,
"delta": 0.3322,
"percent_delta": 0.4975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8229,
"after": 2.0,
"delta": 0.1771,
"percent_delta": 0.0972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.133,
"after": 0.0,
"delta": -0.133,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1563,
"after": 0.0,
"delta": -0.1563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8839,
"after": 1.0,
"delta": 0.1161,
"percent_delta": 0.1313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7722,
"after": 2.0,
"delta": 0.2278,
"percent_delta": 0.1285,
"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.6678,
"after": 1.0,
"delta": 0.3322,
"percent_delta": 0.4975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.398,
"after": 0.0,
"delta": -0.398,
"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": 6.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": 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": 6.0,
"after": 6.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": 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_R",
"before": 1.2387,
"after": 1.0,
"delta": -0.2387,
"percent_delta": -0.1927,
"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": 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_R",
"before": 1.2387,
"after": 1.0,
"delta": -0.2387,
"percent_delta": -0.1927,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"predicted_R": 1.0,
"predicted_RBI": 1.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2873,
"after": 0.333,
"delta": 0.0457,
"percent_delta": 0.1591,
"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": 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_OBP",
"before": 0.3552,
"after": 0.429,
"delta": 0.0738,
"percent_delta": 0.2078,
"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.4409,
"after": 0.333,
"delta": -0.1079,
"percent_delta": -0.2447,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3552,
"after": 0.429,
"delta": 0.0738,
"percent_delta": 0.2078,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4409,
"after": 0.333,
"delta": -0.1079,
"percent_delta": -0.2447,
"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": 1.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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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_HBP",
"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": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2873,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3552,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4409,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2873,
"delta": -0.0457,
"percent_delta": -0.1372,
"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.429,
"after": 0.3552,
"delta": -0.0738,
"percent_delta": -0.1721,
"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.4409,
"delta": 0.1079,
"percent_delta": 0.3241,
"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.4409,
"delta": 0.1079,
"percent_delta": 0.3241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3552,
"delta": -0.0738,
"percent_delta": -0.1721,
"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.255,
"after": 0.0,
"delta": -0.255,
"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": 4.39,
"after": 4.0,
"delta": -0.39,
"percent_delta": -0.0888,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2873,
"delta": 0.0433,
"percent_delta": 0.1775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.387,
"after": 0.0,
"delta": -0.387,
"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.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3552,
"delta": 0.0082,
"percent_delta": 0.0236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.689,
"after": 1.0,
"delta": 0.311,
"percent_delta": 0.4514,
"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.402,
"after": 0.4409,
"delta": 0.0389,
"percent_delta": 0.0968,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.113,
"after": 1.0,
"delta": -0.113,
"percent_delta": -0.1015,
"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_R",
"before": 0.689,
"after": 1.0,
"delta": 0.311,
"percent_delta": 0.4514,
"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.255 | - |
| predicted_3B | 0.047 | - |
| predicted_AB | 4.390 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.387 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.347 | - |
| predicted_R | 0.689 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.402 | - |
| predicted_SO | 1.113 | - |
Final model 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.398 | 0.143 |
| predicted_3B | 0.054 | 0.007 |
| predicted_AB | 6.345 | 1.955 |
| predicted_AVG | 0.265 | 0.021 |
| predicted_BB | 0.655 | 0.268 |
| predicted_H | 1.737 | 0.667 |
| predicted_HBP | 0.133 | - |
| predicted_HR | 0.149 | 0.039 |
| predicted_OBP | 0.358 | 0.011 |
| predicted_R | 1.140 | 0.451 |
| predicted_RBI | 0.814 | 0.284 |
| predicted_SLG | 0.419 | 0.017 |
| predicted_SO | 1.808 | 0.695 |
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.398 | 0.000 |
| predicted_3B | 0.054 | 0.000 |
| predicted_AB | 6.345 | 0.000 |
| predicted_AVG | 0.287 | 0.022 |
| predicted_BB | 0.668 | 0.013 |
| predicted_H | 1.823 | 0.085 |
| predicted_HBP | 0.133 | 0.000 |
| predicted_HR | 0.156 | 0.007 |
| predicted_OBP | 0.355 | -0.003 |
| predicted_R | 1.239 | 0.098 |
| predicted_RBI | 0.884 | 0.070 |
| predicted_SLG | 0.441 | 0.022 |
| predicted_SO | 1.772 | -0.036 |
AB rounded to 6 (raw=6.34), rates preserved: AVG=0.287 HR/AB=0.025
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.398 |
| predicted_3B | 0.000 | -0.054 |
| predicted_AB | 6.000 | -0.345 |
| predicted_AVG | 0.333 | 0.046 |
| predicted_BB | 1.000 | 0.332 |
| predicted_H | 2.000 | 0.177 |
| predicted_HR | 0.000 | -0.156 |
| predicted_OBP | 0.429 | 0.074 |
| predicted_R | 1.000 | -0.239 |
| predicted_RBI | 1.000 | 0.116 |
| predicted_SLG | 0.333 | -0.108 |
| predicted_SO | 2.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 | 4.000 | -2.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | -1.000 |
| HBP | 1.000 | 1.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 | -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 | 7.000 | 2.000 | 0.000 | 0.000 | 2.000 | 5.000 | 3.000 | 7.000 | 0.3182 | 0.4231 | 0.4091 | 0.3182 | 0.0000 | 0.0909 | 0.1364 | 0.3182 |
| last_10 | 0.20 | 10 | - | 42.000 | 12.000 | 2.000 | 0.000 | 0.000 | 5.000 | 10.000 | 6.000 | 16.000 | 0.2857 | 0.3878 | 0.3333 | 0.2857 | 0.0000 | 0.1191 | 0.1429 | 0.3810 |
| season | 0.60 | 33 | - | 414.000 | 121.000 | 27.000 | 5.000 | 15.000 | 63.000 | 73.000 | 41.000 | 118.000 | 0.2923 | 0.3575 | 0.4903 | 0.2923 | 0.0362 | 0.1522 | 0.0990 | 0.2850 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5860 |
| predicted_3B | 0.0630 |
| predicted_AB | 8.9150 |
| predicted_AVG | 0.2933 |
| predicted_BB | 1.0070 |
| predicted_H | 2.6150 |
| predicted_HBP | 0.1330 |
| predicted_HR | 0.2000 |
| predicted_OBP | 0.3728 |
| predicted_R | 1.7340 |
| predicted_RBI | 1.1870 |
| predicted_SLG | 0.4405 |
| predicted_SO | 2.7220 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2550 | 0.5860 | 0.3980 | model_form_blend |
| predicted_3B | 0.0470 | 0.0630 | 0.0539 | model_form_blend |
| predicted_AB | 4.3900 | 8.9150 | 6.3446 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2933 | 0.2653 | model_form_blend |
| predicted_BB | 0.3870 | 1.0070 | 0.6548 | model_form_blend |
| predicted_H | 1.0700 | 2.6150 | 1.7374 | model_form_blend |
| predicted_HBP | - | 0.1330 | 0.1330 | form_only |
| predicted_HR | 0.1100 | 0.2000 | 0.1489 | model_form_blend |
| predicted_OBP | 0.3470 | 0.3728 | 0.3581 | model_form_blend |
| predicted_R | 0.6890 | 1.7340 | 1.1404 | model_form_blend |
| predicted_RBI | 0.5300 | 1.1870 | 0.8138 | model_form_blend |
| predicted_SLG | 0.4020 | 0.4405 | 0.4186 | model_form_blend |
| predicted_SO | 1.1130 | 2.7220 | 1.8080 | 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 | 106 |
| 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 | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 1 |
| 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 | 5 |
| Hitting_AVG | 0.4 |
| 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 | 2 |
| 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 | DH |
| gameID | 20260606_MIL@COL |
| game_type | full |
| mlbID | 592885 |
| playerID | 592885 |
| playerName | Christian Yelich |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-06 |
| sl_k_percent | 28.8 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.35 |
| sl_xwoba | 0.296 |
| sl_xba | 0.223 |
| sl_xslg | 0.376 |
| sl_sweet_spot_percent | 29.2 |
| sl_barrel_batted_rate | 6.7 |
| sl_hard_hit_percent | 36.0 |
| sl_exit_velocity_avg | 88.4 |
| sl_launch_angle_avg | 2.6 |
| sl_whiff_percent | 33.6 |
| 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.212 | 0.000 | 0.000 | Hitting_2B | 0.212 | 0.000 | -0.212 | 0.000 |
| predicted_3B | 0.042 | 0.000 | 0.000 | Hitting_3B | 0.042 | 0.000 | -0.042 | 0.000 |
| predicted_AB | 4.070 | 3.000 | 7.000 | Hitting_AB | 3.742 | 5.000 | -0.742 | -2.000 |
| predicted_AVG | 0.253 | 0.000 | 0.286 | Hitting_AVG | 0.289 | 0.200 | -0.289 | -0.200 |
| predicted_BB | 0.771 | 0.000 | 1.000 | Hitting_BB | 0.771 | 0.000 | -0.771 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_H | 1.030 | 0.000 | 2.000 | Hitting_H | 1.081 | 1.000 | -1.081 | -1.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.153 | 0.000 | -0.153 | 0.000 |
| predicted_OBP | 0.366 | 0.000 | 0.375 | Hitting_OBP | 0.408 | 0.200 | -0.408 | -0.200 |
| predicted_R | 0.919 | 1.000 | 2.000 | Hitting_R | 0.919 | 0.000 | 0.081 | 1.000 |
| predicted_RBI | 0.670 | 2.000 | 1.000 | Hitting_RBI | 0.669 | 2.000 | 1.331 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.199 | 0.000 | -0.199 | 0.000 |
| predicted_SLG | 0.475 | 0.000 | 0.286 | Hitting_SLG | 0.490 | 0.200 | -0.490 | -0.200 |
| predicted_SO | 1.038 | 0.000 | 2.000 | Hitting_SO | 1.038 | 2.000 | -1.038 | -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.6700 -> 2.0000 (boost 1.3300, better) |
| Biggest Deboost | predicted_AB: 4.0700 -> 3.0000 (deboost -1.0700, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.0700 -> 6.8496 (boost 2.7796, 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 | 6 | 6 | 0 | 6 | 0 | predicted_R: 1.5286 -> 1.6604 (boost 0.1318, 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_AB: 6.8496 -> 7.0000 (boost 0.1504, better) | predicted_RBI: 1.3693 -> 1.0000 (deboost -0.3693, worse) | AB rounded to 7 (raw=6.85), rates preserved: AVG=0.298 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 1.6604 -> 2.0000 (boost 0.3396, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5324 -> 0.2860 (deboost -0.2464, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 7 | 2 | 5 | 2 | 4 | predicted_RBI: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2860 -> 0.5324 (boost 0.2464, better) | - | 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.212,
"predicted_3B": 0.042,
"predicted_AB": 4.07,
"predicted_AVG": 0.253,
"predicted_BB": 0.771,
"predicted_H": 1.03,
"predicted_HR": 0.17,
"predicted_OBP": 0.366,
"predicted_R": 0.919,
"predicted_RBI": 0.67,
"predicted_SLG": 0.475,
"predicted_SO": 1.038
},
"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.3676,
"predicted_3B": 0.0791,
"predicted_AB": 6.8496,
"predicted_AVG": 0.2736,
"predicted_BB": 1.2064,
"predicted_H": 1.9468,
"predicted_HBP": 0.003,
"predicted_HR": 0.3424,
"predicted_OBP": 0.3796,
"predicted_R": 1.5286,
"predicted_RBI": 1.2606,
"predicted_SLG": 0.504,
"predicted_SO": 1.9172
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.212,
"after": 0.3676,
"delta": 0.1556,
"percent_delta": 0.734,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.042,
"after": 0.0791,
"delta": 0.0371,
"percent_delta": 0.8833,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.07,
"after": 6.8496,
"delta": 2.7796,
"percent_delta": 0.6829,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2736,
"delta": 0.0206,
"percent_delta": 0.0814,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.771,
"after": 1.2064,
"delta": 0.4354,
"percent_delta": 0.5647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.9468,
"delta": 0.9168,
"percent_delta": 0.8901,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.3424,
"delta": 0.1724,
"percent_delta": 1.0141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.366,
"after": 0.3796,
"delta": 0.0136,
"percent_delta": 0.0372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.919,
"after": 1.5286,
"delta": 0.6096,
"percent_delta": 0.6633,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.67,
"after": 1.2606,
"delta": 0.5906,
"percent_delta": 0.8815,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.504,
"delta": 0.029,
"percent_delta": 0.0611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.038,
"after": 1.9172,
"delta": 0.8792,
"percent_delta": 0.847,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.07,
"after": 6.8496,
"delta": 2.7796,
"percent_delta": 0.6829,
"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.3676,
"predicted_3B": 0.0791,
"predicted_AB": 6.8496,
"predicted_AVG": 0.2982,
"predicted_BB": 1.2303,
"predicted_H": 2.0426,
"predicted_HBP": 0.003,
"predicted_HR": 0.3594,
"predicted_OBP": 0.4051,
"predicted_R": 1.6604,
"predicted_RBI": 1.3693,
"predicted_SLG": 0.5324,
"predicted_SO": 1.8792
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3676,
"after": 0.3676,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0791,
"after": 0.0791,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.8496,
"after": 6.8496,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2736,
"after": 0.2982,
"delta": 0.0246,
"percent_delta": 0.0899,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2064,
"after": 1.2303,
"delta": 0.0239,
"percent_delta": 0.0198,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9468,
"after": 2.0426,
"delta": 0.0958,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"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.3424,
"after": 0.3594,
"delta": 0.017,
"percent_delta": 0.0496,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3796,
"after": 0.4051,
"delta": 0.0255,
"percent_delta": 0.0672,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.5286,
"after": 1.6604,
"delta": 0.1318,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.2606,
"after": 1.3693,
"delta": 0.1087,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.504,
"after": 0.5324,
"delta": 0.0284,
"percent_delta": 0.0563,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9172,
"after": 1.8792,
"delta": -0.038,
"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_R",
"before": 1.5286,
"after": 1.6604,
"delta": 0.1318,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.85), rates preserved: AVG=0.298 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3676,
"after": 0.0,
"delta": -0.3676,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0791,
"after": 0.0,
"delta": -0.0791,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.8496,
"after": 7.0,
"delta": 0.1504,
"percent_delta": 0.022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2303,
"after": 1.0,
"delta": -0.2303,
"percent_delta": -0.1872,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 2.0426,
"after": 2.0,
"delta": -0.0426,
"percent_delta": -0.0209,
"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.3594,
"after": 0.0,
"delta": -0.3594,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.3693,
"after": 1.0,
"delta": -0.3693,
"percent_delta": -0.2697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8792,
"after": 2.0,
"delta": 0.1208,
"percent_delta": 0.0643,
"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": 6.8496,
"after": 7.0,
"delta": 0.1504,
"percent_delta": 0.022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.3693,
"after": 1.0,
"delta": -0.3693,
"percent_delta": -0.2697,
"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": 7.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 2.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": 7.0,
"after": 7.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": 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_R",
"before": 1.6604,
"after": 2.0,
"delta": 0.3396,
"percent_delta": 0.2045,
"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": 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_R",
"before": 1.6604,
"after": 2.0,
"delta": 0.3396,
"percent_delta": 0.2045,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 2.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2982,
"after": 0.286,
"delta": -0.0122,
"percent_delta": -0.0409,
"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": 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_OBP",
"before": 0.4051,
"after": 0.375,
"delta": -0.0301,
"percent_delta": -0.0743,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 2.0,
"after": 2.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.5324,
"after": 0.286,
"delta": -0.2464,
"percent_delta": -0.4628,
"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_SLG",
"before": 0.5324,
"after": 0.286,
"delta": -0.2464,
"percent_delta": -0.4628,
"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": 1.0,
"predicted_RBI": 2.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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "higher",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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.2982,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4051,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 1.0,
"predicted_SLG": 0.5324,
"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.286,
"after": 0.2982,
"delta": 0.0122,
"percent_delta": 0.0427,
"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.375,
"after": 0.4051,
"delta": 0.0301,
"percent_delta": 0.0802,
"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": 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.286,
"after": 0.5324,
"delta": 0.2464,
"percent_delta": 0.8614,
"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.286,
"after": 0.5324,
"delta": 0.2464,
"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.212,
"after": 0.0,
"delta": -0.212,
"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": 4.07,
"after": 3.0,
"delta": -1.07,
"percent_delta": -0.2629,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2982,
"delta": 0.0452,
"percent_delta": 0.1787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.771,
"after": 0.0,
"delta": -0.771,
"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.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.366,
"after": 0.4051,
"delta": 0.0391,
"percent_delta": 0.1068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.919,
"after": 1.0,
"delta": 0.081,
"percent_delta": 0.0881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.67,
"after": 2.0,
"delta": 1.33,
"percent_delta": 1.9851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.5324,
"delta": 0.0574,
"percent_delta": 0.1208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.038,
"after": 0.0,
"delta": -1.038,
"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.67,
"after": 2.0,
"delta": 1.33,
"percent_delta": 1.9851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.07,
"after": 3.0,
"delta": -1.07,
"percent_delta": -0.2629,
"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.212 | - |
| predicted_3B | 0.042 | - |
| predicted_AB | 4.070 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.771 | - |
| predicted_H | 1.030 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.366 | - |
| predicted_R | 0.919 | - |
| predicted_RBI | 0.670 | - |
| predicted_SLG | 0.475 | - |
| predicted_SO | 1.038 | - |
Final model 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.368 | 0.156 |
| predicted_3B | 0.079 | 0.037 |
| predicted_AB | 6.850 | 2.780 |
| predicted_AVG | 0.274 | 0.021 |
| predicted_BB | 1.206 | 0.435 |
| predicted_H | 1.947 | 0.917 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.342 | 0.172 |
| predicted_OBP | 0.380 | 0.014 |
| predicted_R | 1.529 | 0.610 |
| predicted_RBI | 1.261 | 0.591 |
| predicted_SLG | 0.504 | 0.029 |
| predicted_SO | 1.917 | 0.879 |
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.368 | 0.000 |
| predicted_3B | 0.079 | 0.000 |
| predicted_AB | 6.850 | 0.000 |
| predicted_AVG | 0.298 | 0.025 |
| predicted_BB | 1.230 | 0.024 |
| predicted_H | 2.043 | 0.096 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.359 | 0.017 |
| predicted_OBP | 0.405 | 0.026 |
| predicted_R | 1.660 | 0.132 |
| predicted_RBI | 1.369 | 0.109 |
| predicted_SLG | 0.532 | 0.028 |
| predicted_SO | 1.879 | -0.038 |
AB rounded to 7 (raw=6.85), rates preserved: AVG=0.298 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 2.000 | - |
| RBI | 1.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.368 |
| predicted_3B | 0.000 | -0.079 |
| predicted_AB | 7.000 | 0.150 |
| predicted_AVG | 0.286 | -0.012 |
| predicted_BB | 1.000 | -0.230 |
| predicted_H | 2.000 | -0.043 |
| predicted_HR | 0.000 | -0.359 |
| predicted_OBP | 0.375 | -0.030 |
| predicted_R | 2.000 | 0.340 |
| predicted_RBI | 1.000 | -0.369 |
| predicted_SLG | 0.286 | -0.246 |
| predicted_SO | 2.000 | 0.121 |
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 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | -1.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 1.000 | 1.000 |
| SO | 0.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 | 7.000 | 1.000 | 0.000 | 2.000 | 4.000 | 4.000 | 1.000 | 7.000 | 0.3333 | 0.3636 | 0.6667 | 0.3333 | 0.0952 | 0.1905 | 0.0476 | 0.3333 |
| last_10 | 0.20 | 10 | - | 36.000 | 11.000 | 2.000 | 1.000 | 2.000 | 9.000 | 7.000 | 7.000 | 11.000 | 0.3056 | 0.4091 | 0.5833 | 0.3056 | 0.0556 | 0.2500 | 0.1944 | 0.3056 |
| season | 0.60 | 59 | - | 883.000 | 255.000 | 50.000 | 10.000 | 36.000 | 158.000 | 217.000 | 182.000 | 245.000 | 0.2888 | 0.4076 | 0.4904 | 0.2888 | 0.0408 | 0.1789 | 0.2061 | 0.2775 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5640 |
| predicted_3B | 0.1260 |
| predicted_AB | 10.3580 |
| predicted_AVG | 0.2997 |
| predicted_BB | 1.7560 |
| predicted_H | 3.1040 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.5600 |
| predicted_OBP | 0.3968 |
| predicted_R | 2.2980 |
| predicted_RBI | 2.0060 |
| predicted_SLG | 0.5405 |
| predicted_SO | 3.0270 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2120 | 0.5640 | 0.3676 | model_form_blend |
| predicted_3B | 0.0420 | 0.1260 | 0.0791 | model_form_blend |
| predicted_AB | 4.0700 | 10.3580 | 6.8496 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2997 | 0.2736 | model_form_blend |
| predicted_BB | 0.7710 | 1.7560 | 1.2064 | model_form_blend |
| predicted_H | 1.0300 | 3.1040 | 1.9468 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1700 | 0.5600 | 0.3424 | model_form_blend |
| predicted_OBP | 0.3660 | 0.3968 | 0.3796 | model_form_blend |
| predicted_R | 0.9190 | 2.2980 | 1.5286 | model_form_blend |
| predicted_RBI | 0.6700 | 2.0060 | 1.2606 | model_form_blend |
| predicted_SLG | 0.4750 | 0.5405 | 0.5040 | model_form_blend |
| predicted_SO | 1.0380 | 3.0270 | 1.9172 | 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 | 236 |
| Season rows before report date | 236 |
| Report year | 2026 |
| Profile rows used | 236 |
| 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 | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 1 |
| 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 | 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 | 2 |
| 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 | 2B |
| gameID | 20260607_MIL@COL |
| game_type | full |
| mlbID | 668930 |
| playerID | 668930 |
| playerName | Brice Turang |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 17.0 |
| sl_woba | 0.387 |
| sl_xwoba | 0.372 |
| sl_xba | 0.263 |
| sl_xslg | 0.462 |
| sl_sweet_spot_percent | 38.1 |
| sl_barrel_batted_rate | 8.2 |
| sl_hard_hit_percent | 48.1 |
| sl_exit_velocity_avg | 91.3 |
| sl_launch_angle_avg | 8.2 |
| sl_whiff_percent | 20.7 |
| 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.388 | 1.000 | 1.000 | Hitting_2B | 0.388 | 2.000 | 0.612 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.760 | 4.000 | 7.000 | Hitting_AB | 4.327 | 6.000 | -0.327 | -2.000 |
| predicted_AVG | 0.248 | 0.250 | 0.286 | Hitting_AVG | 0.285 | 0.500 | -0.035 | -0.250 |
| predicted_BB | 0.306 | 1.000 | 1.000 | Hitting_BB | 0.306 | 0.000 | 0.694 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.180 | 1.000 | 2.000 | Hitting_H | 1.235 | 3.000 | -0.235 | -2.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_OBP | 0.339 | 0.400 | 0.375 | Hitting_OBP | 0.333 | 0.500 | 0.067 | -0.100 |
| predicted_R | 0.531 | 1.000 | 1.000 | Hitting_R | 0.531 | 0.000 | 0.469 | 1.000 |
| predicted_RBI | 0.660 | 1.000 | 1.000 | Hitting_RBI | 0.347 | 0.000 | 0.653 | 1.000 |
| predicted_SLG | 0.484 | 0.500 | 0.429 | Hitting_SLG | 0.425 | 0.833 | 0.075 | -0.333 |
| predicted_SO | 1.378 | 0.000 | 2.000 | Hitting_SO | 1.378 | 1.000 | -1.378 | -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_BB: 0.3060 -> 1.0000 (boost 0.6940, better) |
| Biggest Deboost | predicted_SO: 1.3780 -> 0.0000 (deboost -1.3780, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.7600 -> 7.0338 (boost 2.2738, 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 | 5 | 0 | 5 | 0 | predicted_H: 1.9612 -> 2.0577 (boost 0.0965, 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.5147 -> 1.0000 (boost 0.4853, better) | predicted_HR: 0.3205 -> 0.0000 (deboost -0.3205, worse) | AB rounded to 7 (raw=7.03), rates preserved: AVG=0.293 HR/AB=0.046 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0731 -> 1.0000 (deboost -0.0731, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3408 -> 0.3750 (boost 0.0342, better) | predicted_SLG: 0.5161 -> 0.4290 (deboost -0.0871, 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: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.4290 -> 0.5161 (boost 0.0871, better) | predicted_OBP: 0.3750 -> 0.3408 (deboost -0.0342, worse) | 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.388,
"predicted_3B": 0.0,
"predicted_AB": 4.76,
"predicted_AVG": 0.248,
"predicted_BB": 0.306,
"predicted_H": 1.18,
"predicted_HR": 0.21,
"predicted_OBP": 0.339,
"predicted_R": 0.531,
"predicted_RBI": 0.66,
"predicted_SLG": 0.484,
"predicted_SO": 1.378
},
"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.6087,
"predicted_3B": 0.0009,
"predicted_AB": 7.0338,
"predicted_AVG": 0.2697,
"predicted_BB": 0.5047,
"predicted_H": 1.9612,
"predicted_HBP": 0.006,
"predicted_HR": 0.3054,
"predicted_OBP": 0.343,
"predicted_R": 0.9879,
"predicted_RBI": 0.9783,
"predicted_SLG": 0.4983,
"predicted_SO": 2.0483
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.388,
"after": 0.6087,
"delta": 0.2207,
"percent_delta": 0.5688,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.76,
"after": 7.0338,
"delta": 2.2738,
"percent_delta": 0.4777,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2697,
"delta": 0.0217,
"percent_delta": 0.0875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.306,
"after": 0.5047,
"delta": 0.1987,
"percent_delta": 0.6493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.18,
"after": 1.9612,
"delta": 0.7812,
"percent_delta": 0.662,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.3054,
"delta": 0.0954,
"percent_delta": 0.4543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.343,
"delta": 0.004,
"percent_delta": 0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.531,
"after": 0.9879,
"delta": 0.4569,
"percent_delta": 0.8605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 0.9783,
"delta": 0.3183,
"percent_delta": 0.4823,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.484,
"after": 0.4983,
"delta": 0.0143,
"percent_delta": 0.0295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.378,
"after": 2.0483,
"delta": 0.6703,
"percent_delta": 0.4864,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.76,
"after": 7.0338,
"delta": 2.2738,
"percent_delta": 0.4777,
"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.6087,
"predicted_3B": 0.0009,
"predicted_AB": 7.0338,
"predicted_AVG": 0.2925,
"predicted_BB": 0.5147,
"predicted_H": 2.0577,
"predicted_HBP": 0.006,
"predicted_HR": 0.3205,
"predicted_OBP": 0.3408,
"predicted_R": 1.0731,
"predicted_RBI": 1.0626,
"predicted_SLG": 0.5161,
"predicted_SO": 2.0077
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.6087,
"after": 0.6087,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0338,
"after": 7.0338,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2697,
"after": 0.2925,
"delta": 0.0228,
"percent_delta": 0.0845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5047,
"after": 0.5147,
"delta": 0.01,
"percent_delta": 0.0198,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9612,
"after": 2.0577,
"delta": 0.0965,
"percent_delta": 0.0492,
"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.3054,
"after": 0.3205,
"delta": 0.0151,
"percent_delta": 0.0494,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3408,
"delta": -0.0022,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.9879,
"after": 1.0731,
"delta": 0.0852,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9783,
"after": 1.0626,
"delta": 0.0843,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4983,
"after": 0.5161,
"delta": 0.0178,
"percent_delta": 0.0357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0483,
"after": 2.0077,
"delta": -0.0406,
"percent_delta": -0.0198,
"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.9612,
"after": 2.0577,
"delta": 0.0965,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.03), rates preserved: AVG=0.293 HR/AB=0.046",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.6087,
"after": 1.0,
"delta": 0.3913,
"percent_delta": 0.6428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0338,
"after": 7.0,
"delta": -0.0338,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5147,
"after": 1.0,
"delta": 0.4853,
"percent_delta": 0.9429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.0577,
"after": 2.0,
"delta": -0.0577,
"percent_delta": -0.028,
"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.3205,
"after": 0.0,
"delta": -0.3205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0626,
"after": 1.0,
"delta": -0.0626,
"percent_delta": -0.0589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0077,
"after": 2.0,
"delta": -0.0077,
"percent_delta": -0.0038,
"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.5147,
"after": 1.0,
"delta": 0.4853,
"percent_delta": 0.9429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3205,
"after": 0.0,
"delta": -0.3205,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.0731,
"after": 1.0,
"delta": -0.0731,
"percent_delta": -0.0681,
"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": 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_R",
"before": 1.0731,
"after": 1.0,
"delta": -0.0731,
"percent_delta": -0.0681,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.429,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2925,
"after": 0.286,
"delta": -0.0065,
"percent_delta": -0.0222,
"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": 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_OBP",
"before": 0.3408,
"after": 0.375,
"delta": 0.0342,
"percent_delta": 0.1004,
"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.5161,
"after": 0.429,
"delta": -0.0871,
"percent_delta": -0.1688,
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3408,
"after": 0.375,
"delta": 0.0342,
"percent_delta": 0.1004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5161,
"after": 0.429,
"delta": -0.0871,
"percent_delta": -0.1688,
"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": 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": 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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 2.0,
"after": 0.0,
"delta": -2.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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2925,
"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.3408,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5161,
"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.286,
"after": 0.2925,
"delta": 0.0065,
"percent_delta": 0.0229,
"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.375,
"after": 0.3408,
"delta": -0.0342,
"percent_delta": -0.0913,
"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.429,
"after": 0.5161,
"delta": 0.0871,
"percent_delta": 0.2029,
"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.429,
"after": 0.5161,
"delta": 0.0871,
"percent_delta": 0.2029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3408,
"delta": -0.0342,
"percent_delta": -0.0913,
"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.388,
"after": 1.0,
"delta": 0.612,
"percent_delta": 1.5773,
"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.76,
"after": 4.0,
"delta": -0.76,
"percent_delta": -0.1597,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2925,
"delta": 0.0445,
"percent_delta": 0.1794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.306,
"after": 1.0,
"delta": 0.694,
"percent_delta": 2.268,
"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.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3408,
"delta": 0.0018,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.531,
"after": 1.0,
"delta": 0.469,
"percent_delta": 0.8832,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 1.0,
"delta": 0.34,
"percent_delta": 0.5152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.484,
"after": 0.5161,
"delta": 0.0321,
"percent_delta": 0.0663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.378,
"after": 0.0,
"delta": -1.378,
"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_BB",
"before": 0.306,
"after": 1.0,
"delta": 0.694,
"percent_delta": 2.268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.378,
"after": 0.0,
"delta": -1.378,
"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.388 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.760 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.306 | - |
| predicted_H | 1.180 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.531 | - |
| predicted_RBI | 0.660 | - |
| predicted_SLG | 0.484 | - |
| predicted_SO | 1.378 | - |
Final model 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.609 | 0.221 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 7.034 | 2.274 |
| predicted_AVG | 0.270 | 0.022 |
| predicted_BB | 0.505 | 0.199 |
| predicted_H | 1.961 | 0.781 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.305 | 0.095 |
| predicted_OBP | 0.343 | 0.004 |
| predicted_R | 0.988 | 0.457 |
| predicted_RBI | 0.978 | 0.318 |
| predicted_SLG | 0.498 | 0.014 |
| predicted_SO | 2.048 | 0.670 |
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.609 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 7.034 | 0.000 |
| predicted_AVG | 0.292 | 0.023 |
| predicted_BB | 0.515 | 0.010 |
| predicted_H | 2.058 | 0.097 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.321 | 0.015 |
| predicted_OBP | 0.341 | -0.002 |
| predicted_R | 1.073 | 0.085 |
| predicted_RBI | 1.063 | 0.084 |
| predicted_SLG | 0.516 | 0.018 |
| predicted_SO | 2.008 | -0.041 |
AB rounded to 7 (raw=7.03), rates preserved: AVG=0.293 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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 | 1.000 | 0.391 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 7.000 | -0.034 |
| predicted_AVG | 0.286 | -0.007 |
| predicted_BB | 1.000 | 0.485 |
| predicted_H | 2.000 | -0.058 |
| predicted_HR | 0.000 | -0.321 |
| predicted_OBP | 0.375 | 0.034 |
| predicted_R | 1.000 | -0.073 |
| predicted_RBI | 1.000 | -0.063 |
| predicted_SLG | 0.429 | -0.087 |
| predicted_SO | 2.000 | -0.008 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -3.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | -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 | 7.000 | 2.000 | 0.000 | 2.000 | 4.000 | 4.000 | 1.000 | 6.000 | 0.3333 | 0.3636 | 0.7143 | 0.3333 | 0.0952 | 0.1905 | 0.0476 | 0.2857 |
| last_10 | 0.20 | 10 | - | 41.000 | 13.000 | 4.000 | 0.000 | 3.000 | 11.000 | 10.000 | 5.000 | 10.000 | 0.3171 | 0.3913 | 0.6341 | 0.3171 | 0.0732 | 0.2683 | 0.1220 | 0.2439 |
| season | 0.60 | 29 | - | 424.000 | 121.000 | 38.000 | 0.000 | 7.000 | 34.000 | 52.000 | 30.000 | 135.000 | 0.2854 | 0.3326 | 0.4245 | 0.2854 | 0.0165 | 0.0802 | 0.0707 | 0.3184 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8990 |
| predicted_3B | 0.0020 |
| predicted_AB | 10.0250 |
| predicted_AVG | 0.2982 |
| predicted_BB | 0.7660 |
| predicted_H | 2.9890 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.4310 |
| predicted_OBP | 0.3482 |
| predicted_R | 1.5890 |
| predicted_RBI | 1.3970 |
| predicted_SLG | 0.5172 |
| predicted_SO | 2.9300 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3880 | 0.8990 | 0.6087 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 4.7600 | 10.0250 | 7.0338 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2982 | 0.2697 | model_form_blend |
| predicted_BB | 0.3060 | 0.7660 | 0.5047 | model_form_blend |
| predicted_H | 1.1800 | 2.9890 | 1.9612 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.2100 | 0.4310 | 0.3054 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3482 | 0.3430 | model_form_blend |
| predicted_R | 0.5310 | 1.5890 | 0.9879 | model_form_blend |
| predicted_RBI | 0.6600 | 1.3970 | 0.9783 | model_form_blend |
| predicted_SLG | 0.4840 | 0.5172 | 0.4983 | model_form_blend |
| predicted_SO | 1.3780 | 2.9300 | 2.0483 | 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 | 98 |
| 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 | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.285 |
| 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 | 6 |
| Hitting_AVG | 0.5 |
| 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 | 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 | LF |
| gameID | 20260607_MIL@COL |
| game_type | full |
| mlbID | 694192 |
| playerID | 694192 |
| playerName | Jackson Chourio |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-07 |
| sl_k_percent | 26.9 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.364 |
| sl_xwoba | 0.344 |
| sl_xba | 0.244 |
| sl_xslg | 0.497 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 17.2 |
| sl_hard_hit_percent | 49.4 |
| sl_exit_velocity_avg | 92.7 |
| sl_launch_angle_avg | 13.1 |
| sl_whiff_percent | 24.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.190 | 1.000 | 0.000 | Hitting_2B | 0.190 | 0.000 | 0.810 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.310 | 4.000 | 7.000 | Hitting_AB | 4.044 | 5.000 | -0.044 | -1.000 |
| predicted_AVG | 0.234 | 0.500 | 0.286 | Hitting_AVG | 0.296 | 0.400 | 0.204 | 0.100 |
| predicted_BB | 0.438 | 0.000 | 1.000 | Hitting_BB | 0.438 | 0.000 | -0.438 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 1.010 | 2.000 | 2.000 | Hitting_H | 1.199 | 2.000 | 0.801 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_OBP | 0.293 | 0.500 | 0.375 | Hitting_OBP | 0.365 | 0.400 | 0.135 | 0.100 |
| predicted_R | 0.619 | 1.000 | 1.000 | Hitting_R | 0.619 | 2.000 | 0.381 | -1.000 |
| predicted_RBI | 0.600 | 1.000 | 1.000 | Hitting_RBI | 0.704 | 1.000 | 0.296 | 0.000 |
| predicted_SLG | 0.380 | 0.750 | 0.286 | Hitting_SLG | 0.403 | 0.400 | 0.347 | 0.350 |
| predicted_SO | 0.535 | 0.000 | 1.000 | Hitting_SO | 0.535 | 0.000 | -0.535 | 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_H: 1.0100 -> 2.0000 (boost 0.9900, better) |
| Biggest Deboost | predicted_SO: 0.5350 -> 0.0000 (deboost -0.5350, 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 | 10 | 9 | 1 | 8 | 2 | predicted_AB: 4.3100 -> 7.1302 (boost 2.8202, better) | predicted_SLG: 0.3800 -> 0.3746 (deboost -0.0054, 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 | 6 | 0 | 6 | 0 | predicted_RBI: 1.1071 -> 1.2025 (boost 0.0954, 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_BB: 0.5876 -> 1.0000 (boost 0.4124, better) | predicted_2B: 0.2651 -> 0.0000 (deboost -0.2651, worse) | AB rounded to 7 (raw=7.13), rates preserved: AVG=0.259 HR/AB=0.029 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1017 -> 1.0000 (deboost -0.1017, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3152 -> 0.3750 (boost 0.0598, better) | predicted_SLG: 0.3819 -> 0.2860 (deboost -0.0959, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3819 (boost 0.0959, better) | predicted_OBP: 0.3750 -> 0.3152 (deboost -0.0598, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "661388",
"player_name": "William Contreras",
"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.19,
"predicted_3B": 0.0,
"predicted_AB": 4.31,
"predicted_AVG": 0.234,
"predicted_BB": 0.438,
"predicted_H": 1.01,
"predicted_HR": 0.12,
"predicted_OBP": 0.293,
"predicted_R": 0.619,
"predicted_RBI": 0.6,
"predicted_SLG": 0.38,
"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.2651,
"predicted_3B": 0.0004,
"predicted_AB": 7.1302,
"predicted_AVG": 0.2423,
"predicted_BB": 0.5762,
"predicted_H": 1.7582,
"predicted_HBP": 0.037,
"predicted_HR": 0.1946,
"predicted_OBP": 0.2944,
"predicted_R": 1.0143,
"predicted_RBI": 1.1071,
"predicted_SLG": 0.3746,
"predicted_SO": 0.9224
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.19,
"after": 0.2651,
"delta": 0.0751,
"percent_delta": 0.3953,
"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.31,
"after": 7.1302,
"delta": 2.8202,
"percent_delta": 0.6543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2423,
"delta": 0.0083,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.438,
"after": 0.5762,
"delta": 0.1382,
"percent_delta": 0.3155,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.7582,
"delta": 0.7482,
"percent_delta": 0.7408,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1946,
"delta": 0.0746,
"percent_delta": 0.6217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2944,
"delta": 0.0014,
"percent_delta": 0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.619,
"after": 1.0143,
"delta": 0.3953,
"percent_delta": 0.6386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 1.1071,
"delta": 0.5071,
"percent_delta": 0.8452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3746,
"delta": -0.0054,
"percent_delta": -0.0142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.535,
"after": 0.9224,
"delta": 0.3874,
"percent_delta": 0.7241,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 9,
"deboosted_metrics": 1,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.31,
"after": 7.1302,
"delta": 2.8202,
"percent_delta": 0.6543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3746,
"delta": -0.0054,
"percent_delta": -0.0142,
"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.2651,
"predicted_3B": 0.0004,
"predicted_AB": 7.1302,
"predicted_AVG": 0.2587,
"predicted_BB": 0.5876,
"predicted_H": 1.8447,
"predicted_HBP": 0.037,
"predicted_HR": 0.2043,
"predicted_OBP": 0.3152,
"predicted_R": 1.1017,
"predicted_RBI": 1.2025,
"predicted_SLG": 0.3819,
"predicted_SO": 0.9041
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2651,
"after": 0.2651,
"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": 7.1302,
"after": 7.1302,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2423,
"after": 0.2587,
"delta": 0.0164,
"percent_delta": 0.0677,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5762,
"after": 0.5876,
"delta": 0.0114,
"percent_delta": 0.0198,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7582,
"after": 1.8447,
"delta": 0.0865,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.1946,
"after": 0.2043,
"delta": 0.0097,
"percent_delta": 0.0498,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2944,
"after": 0.3152,
"delta": 0.0208,
"percent_delta": 0.0707,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0143,
"after": 1.1017,
"delta": 0.0874,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1071,
"after": 1.2025,
"delta": 0.0954,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3746,
"after": 0.3819,
"delta": 0.0073,
"percent_delta": 0.0195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9224,
"after": 0.9041,
"delta": -0.0183,
"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_RBI",
"before": 1.1071,
"after": 1.2025,
"delta": 0.0954,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.13), rates preserved: AVG=0.259 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.2651,
"after": 0.0,
"delta": -0.2651,
"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": 7.1302,
"after": 7.0,
"delta": -0.1302,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5876,
"after": 1.0,
"delta": 0.4124,
"percent_delta": 0.7018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8447,
"after": 2.0,
"delta": 0.1553,
"percent_delta": 0.0842,
"direction": "boost",
"projection_effect": "better",
"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.2043,
"after": 0.0,
"delta": -0.2043,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.2025,
"after": 1.0,
"delta": -0.2025,
"percent_delta": -0.1684,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9041,
"after": 1.0,
"delta": 0.0959,
"percent_delta": 0.1061,
"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.5876,
"after": 1.0,
"delta": 0.4124,
"percent_delta": 0.7018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2651,
"after": 0.0,
"delta": -0.2651,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 1.1017,
"after": 1.0,
"delta": -0.1017,
"percent_delta": -0.0923,
"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": 1.1017,
"after": 1.0,
"delta": -0.1017,
"percent_delta": -0.0923,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2587,
"after": 0.286,
"delta": 0.0273,
"percent_delta": 0.1055,
"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": 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_OBP",
"before": 0.3152,
"after": 0.375,
"delta": 0.0598,
"percent_delta": 0.1897,
"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.3819,
"after": 0.286,
"delta": -0.0959,
"percent_delta": -0.2511,
"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.3152,
"after": 0.375,
"delta": 0.0598,
"percent_delta": 0.1897,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3819,
"after": 0.286,
"delta": -0.0959,
"percent_delta": -0.2511,
"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": 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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 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_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": 1,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 2,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2587,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3152,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3819,
"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.286,
"after": 0.2587,
"delta": -0.0273,
"percent_delta": -0.0954,
"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.375,
"after": 0.3152,
"delta": -0.0598,
"percent_delta": -0.1596,
"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.286,
"after": 0.3819,
"delta": 0.0959,
"percent_delta": 0.3355,
"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.286,
"after": 0.3819,
"delta": 0.0959,
"percent_delta": 0.3355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3152,
"delta": -0.0598,
"percent_delta": -0.1596,
"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.19,
"after": 1.0,
"delta": 0.81,
"percent_delta": 4.2632,
"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.31,
"after": 4.0,
"delta": -0.31,
"percent_delta": -0.0719,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2587,
"delta": 0.0247,
"percent_delta": 0.1056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.438,
"after": 0.0,
"delta": -0.438,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 2.0,
"delta": 0.99,
"percent_delta": 0.9802,
"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.293,
"after": 0.3152,
"delta": 0.0222,
"percent_delta": 0.0758,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.619,
"after": 1.0,
"delta": 0.381,
"percent_delta": 0.6155,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 1.0,
"delta": 0.4,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3819,
"delta": 0.0019,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.535,
"after": 0.0,
"delta": -0.535,
"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": 1.01,
"after": 2.0,
"delta": 0.99,
"percent_delta": 0.9802,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.535,
"after": 0.0,
"delta": -0.535,
"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.190 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.310 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.438 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.293 | - |
| predicted_R | 0.619 | - |
| predicted_RBI | 0.600 | - |
| predicted_SLG | 0.380 | - |
| 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.265 | 0.075 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.130 | 2.820 |
| predicted_AVG | 0.242 | 0.008 |
| predicted_BB | 0.576 | 0.138 |
| predicted_H | 1.758 | 0.748 |
| predicted_HBP | 0.037 | - |
| predicted_HR | 0.195 | 0.075 |
| predicted_OBP | 0.294 | 0.001 |
| predicted_R | 1.014 | 0.395 |
| predicted_RBI | 1.107 | 0.507 |
| predicted_SLG | 0.375 | -0.005 |
| predicted_SO | 0.922 | 0.387 |
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.000 | 0.000 |
| predicted_AB | 7.130 | 0.000 |
| predicted_AVG | 0.259 | 0.016 |
| predicted_BB | 0.588 | 0.011 |
| predicted_H | 1.845 | 0.087 |
| predicted_HBP | 0.037 | 0.000 |
| predicted_HR | 0.204 | 0.010 |
| predicted_OBP | 0.315 | 0.021 |
| predicted_R | 1.102 | 0.087 |
| predicted_RBI | 1.202 | 0.095 |
| predicted_SLG | 0.382 | 0.007 |
| predicted_SO | 0.904 | -0.018 |
AB rounded to 7 (raw=7.13), rates preserved: AVG=0.259 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.265 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.130 |
| predicted_AVG | 0.286 | 0.027 |
| predicted_BB | 1.000 | 0.412 |
| predicted_H | 2.000 | 0.155 |
| predicted_HR | 0.000 | -0.204 |
| predicted_OBP | 0.375 | 0.060 |
| predicted_R | 1.000 | -0.102 |
| predicted_RBI | 1.000 | -0.202 |
| predicted_SLG | 0.286 | -0.096 |
| predicted_SO | 1.000 | 0.096 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.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 | - | 20.000 | 4.000 | 0.000 | 0.000 | 1.000 | 3.000 | 3.000 | 0.000 | 2.000 | 0.2000 | 0.2000 | 0.3500 | 0.2000 | 0.0500 | 0.1500 | 0.0000 | 0.1000 |
| last_10 | 0.20 | 10 | - | 40.000 | 7.000 | 1.000 | 0.000 | 1.000 | 6.000 | 4.000 | 1.000 | 6.000 | 0.1750 | 0.1818 | 0.2750 | 0.1750 | 0.0250 | 0.1500 | 0.0250 | 0.1500 |
| season | 0.60 | 59 | - | 914.000 | 271.000 | 43.000 | 0.000 | 18.000 | 159.000 | 140.000 | 99.000 | 121.000 | 0.2965 | 0.3655 | 0.4026 | 0.2965 | 0.0197 | 0.1740 | 0.1083 | 0.1324 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3600 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.6950 |
| predicted_AVG | 0.2528 |
| predicted_BB | 0.7510 |
| predicted_H | 2.7040 |
| predicted_HBP | 0.0370 |
| predicted_HR | 0.2890 |
| predicted_OBP | 0.2962 |
| predicted_R | 1.5140 |
| predicted_RBI | 1.7480 |
| predicted_SLG | 0.3677 |
| predicted_SO | 1.4120 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1900 | 0.3600 | 0.2651 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3100 | 10.6950 | 7.1302 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2528 | 0.2423 | model_form_blend |
| predicted_BB | 0.4380 | 0.7510 | 0.5762 | model_form_blend |
| predicted_H | 1.0100 | 2.7040 | 1.7582 | model_form_blend |
| predicted_HBP | - | 0.0370 | 0.0370 | form_only |
| predicted_HR | 0.1200 | 0.2890 | 0.1946 | model_form_blend |
| predicted_OBP | 0.2930 | 0.2962 | 0.2944 | model_form_blend |
| predicted_R | 0.6190 | 1.5140 | 1.0143 | model_form_blend |
| predicted_RBI | 0.6000 | 1.7480 | 1.1071 | model_form_blend |
| predicted_SLG | 0.3800 | 0.3677 | 0.3746 | model_form_blend |
| predicted_SO | 0.5350 | 1.4120 | 0.9224 | 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 | 226 |
| Season rows before report date | 226 |
| Report year | 2026 |
| Profile rows used | 226 |
| 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.296 |
| 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 | 1 |
| 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 | 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 | DH |
| gameID | 20260607_MIL@COL |
| game_type | full |
| mlbID | 661388 |
| playerID | 661388 |
| playerName | William Contreras |
| pos | C |
| started | True |
| startingPosition | DH |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-07 |
| sl_k_percent | 12.6 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.325 |
| sl_xwoba | 0.335 |
| sl_xba | 0.28 |
| sl_xslg | 0.433 |
| sl_sweet_spot_percent | 29.1 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 41.7 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 11.9 |
| sl_whiff_percent | 19.2 |
| 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.213 | 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.745 | 4.000 | 6.000 | Hitting_AB | 3.745 | 1.000 | 0.255 | 3.000 |
| predicted_AVG | 0.254 | 0.000 | 0.333 | Hitting_AVG | 0.287 | 1.000 | -0.287 | -1.000 |
| predicted_BB | 0.420 | 0.000 | 1.000 | Hitting_BB | 0.420 | 4.000 | -0.420 | -4.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.930 | 0.000 | 2.000 | Hitting_H | 1.074 | 1.000 | -1.074 | -1.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.197 | 1.000 | -0.197 | -1.000 |
| predicted_OBP | 0.379 | 0.000 | 0.429 | Hitting_OBP | 0.364 | 1.000 | -0.364 | -1.000 |
| predicted_R | 0.707 | 0.000 | 1.000 | Hitting_R | 0.707 | 2.000 | -0.707 | -2.000 |
| predicted_RBI | 0.810 | 0.000 | 2.000 | Hitting_RBI | 0.729 | 1.000 | -0.729 | -1.000 |
| predicted_SLG | 0.511 | 0.000 | 0.333 | Hitting_SLG | 0.501 | 4.000 | -0.501 | -4.000 |
| predicted_SO | 0.915 | 2.000 | 1.000 | Hitting_SO | 0.915 | 0.000 | 1.085 | 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.9150 -> 2.0000 (boost 1.0850, worse) |
| Biggest Deboost | predicted_H: 0.9300 -> 0.0000 (deboost -0.9300, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.7450 -> 5.9806 (boost 2.2356, 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 | 5 | 0 | 5 | 0 | predicted_RBI: 1.5076 -> 1.6376 (boost 0.1300, 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 | 3 | 4 | predicted_RBI: 1.6376 -> 2.0000 (boost 0.3624, better) | predicted_SO: 1.4619 -> 1.0000 (deboost -0.4619, better) | AB rounded to 6 (raw=5.98), rates preserved: AVG=0.285 HR/AB=0.073 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.4521 -> 1.0000 (deboost -0.4521, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2849 -> 0.3330 (boost 0.0481, better) | predicted_SLG: 0.5708 -> 0.3330 (deboost -0.2378, 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 -> 2.0000 (boost 1.0000, worse) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.5708 (boost 0.2378, better) | predicted_AVG: 0.3330 -> 0.2849 (deboost -0.0481, 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.213,
"predicted_3B": 0.0,
"predicted_AB": 3.745,
"predicted_AVG": 0.254,
"predicted_BB": 0.42,
"predicted_H": 0.93,
"predicted_HR": 0.21,
"predicted_OBP": 0.379,
"predicted_R": 0.707,
"predicted_RBI": 0.81,
"predicted_SLG": 0.511,
"predicted_SO": 0.915
},
"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.4032,
"predicted_3B": 0.0004,
"predicted_AB": 5.9806,
"predicted_AVG": 0.2673,
"predicted_BB": 1.0715,
"predicted_H": 1.6241,
"predicted_HBP": 0.103,
"predicted_HR": 0.4147,
"predicted_OBP": 0.3926,
"predicted_R": 1.3369,
"predicted_RBI": 1.5076,
"predicted_SLG": 0.5446,
"predicted_SO": 1.4914
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.213,
"after": 0.4032,
"delta": 0.1902,
"percent_delta": 0.893,
"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": 3.745,
"after": 5.9806,
"delta": 2.2356,
"percent_delta": 0.597,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2673,
"delta": 0.0133,
"percent_delta": 0.0524,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.42,
"after": 1.0715,
"delta": 0.6515,
"percent_delta": 1.5512,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 1.6241,
"delta": 0.6941,
"percent_delta": 0.7463,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.4147,
"delta": 0.2047,
"percent_delta": 0.9748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.379,
"after": 0.3926,
"delta": 0.0136,
"percent_delta": 0.0359,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.707,
"after": 1.3369,
"delta": 0.6299,
"percent_delta": 0.8909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.81,
"after": 1.5076,
"delta": 0.6976,
"percent_delta": 0.8612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.511,
"after": 0.5446,
"delta": 0.0336,
"percent_delta": 0.0658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.915,
"after": 1.4914,
"delta": 0.5764,
"percent_delta": 0.6299,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.745,
"after": 5.9806,
"delta": 2.2356,
"percent_delta": 0.597,
"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.4032,
"predicted_3B": 0.0004,
"predicted_AB": 5.9806,
"predicted_AVG": 0.2849,
"predicted_BB": 1.0927,
"predicted_H": 1.704,
"predicted_HBP": 0.103,
"predicted_HR": 0.4353,
"predicted_OBP": 0.3954,
"predicted_R": 1.4521,
"predicted_RBI": 1.6376,
"predicted_SLG": 0.5708,
"predicted_SO": 1.4619
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4032,
"after": 0.4032,
"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": 5.9806,
"after": 5.9806,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2673,
"after": 0.2849,
"delta": 0.0176,
"percent_delta": 0.0658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0715,
"after": 1.0927,
"delta": 0.0212,
"percent_delta": 0.0198,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6241,
"after": 1.704,
"delta": 0.0799,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.103,
"after": 0.103,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4147,
"after": 0.4353,
"delta": 0.0206,
"percent_delta": 0.0497,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3926,
"after": 0.3954,
"delta": 0.0028,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.3369,
"after": 1.4521,
"delta": 0.1152,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.5076,
"after": 1.6376,
"delta": 0.13,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5446,
"after": 0.5708,
"delta": 0.0262,
"percent_delta": 0.0481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4914,
"after": 1.4619,
"delta": -0.0295,
"percent_delta": -0.0198,
"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": 1.5076,
"after": 1.6376,
"delta": 0.13,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.98), rates preserved: AVG=0.285 HR/AB=0.073",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4032,
"after": 0.0,
"delta": -0.4032,
"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": 5.9806,
"after": 6.0,
"delta": 0.0194,
"percent_delta": 0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0927,
"after": 1.0,
"delta": -0.0927,
"percent_delta": -0.0848,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.704,
"after": 2.0,
"delta": 0.296,
"percent_delta": 0.1737,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.103,
"after": 0.0,
"delta": -0.103,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4353,
"after": 0.0,
"delta": -0.4353,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.6376,
"after": 2.0,
"delta": 0.3624,
"percent_delta": 0.2213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4619,
"after": 1.0,
"delta": -0.4619,
"percent_delta": -0.316,
"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": 1.6376,
"after": 2.0,
"delta": 0.3624,
"percent_delta": 0.2213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4619,
"after": 1.0,
"delta": -0.4619,
"percent_delta": -0.316,
"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": 6.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": 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": 6.0,
"after": 6.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": 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_R",
"before": 1.4521,
"after": 1.0,
"delta": -0.4521,
"percent_delta": -0.3113,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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_SO",
"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.4521,
"after": 1.0,
"delta": -0.4521,
"percent_delta": -0.3113,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"predicted_R": 1.0,
"predicted_RBI": 2.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2849,
"after": 0.333,
"delta": 0.0481,
"percent_delta": 0.1688,
"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": 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_OBP",
"before": 0.3954,
"after": 0.429,
"delta": 0.0336,
"percent_delta": 0.085,
"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_SLG",
"before": 0.5708,
"after": 0.333,
"delta": -0.2378,
"percent_delta": -0.4166,
"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.2849,
"after": 0.333,
"delta": 0.0481,
"percent_delta": 0.1688,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5708,
"after": 0.333,
"delta": -0.2378,
"percent_delta": -0.4166,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.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": 1,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 6,
"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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2849,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3954,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5708,
"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.2849,
"delta": -0.0481,
"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_CS",
"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.429,
"after": 0.3954,
"delta": -0.0336,
"percent_delta": -0.0783,
"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.5708,
"delta": 0.2378,
"percent_delta": 0.7142,
"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.5708,
"delta": 0.2378,
"percent_delta": 0.7142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2849,
"delta": -0.0481,
"percent_delta": -0.1444,
"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.213,
"after": 0.0,
"delta": -0.213,
"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.745,
"after": 4.0,
"delta": 0.255,
"percent_delta": 0.0681,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2849,
"delta": 0.0309,
"percent_delta": 0.1217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 0.0,
"delta": -0.93,
"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.379,
"after": 0.3954,
"delta": 0.0164,
"percent_delta": 0.0433,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.707,
"after": 0.0,
"delta": -0.707,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.511,
"after": 0.5708,
"delta": 0.0598,
"percent_delta": 0.117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.915,
"after": 2.0,
"delta": 1.085,
"percent_delta": 1.1858,
"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.915,
"after": 2.0,
"delta": 1.085,
"percent_delta": 1.1858,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.93,
"after": 0.0,
"delta": -0.93,
"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.213 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.745 | - |
| predicted_AVG | 0.254 | - |
| predicted_BB | 0.420 | - |
| predicted_H | 0.930 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.379 | - |
| predicted_R | 0.707 | - |
| predicted_RBI | 0.810 | - |
| predicted_SLG | 0.511 | - |
| predicted_SO | 0.915 | - |
Final model 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.403 | 0.190 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.981 | 2.236 |
| predicted_AVG | 0.267 | 0.013 |
| predicted_BB | 1.071 | 0.651 |
| predicted_H | 1.624 | 0.694 |
| predicted_HBP | 0.103 | - |
| predicted_HR | 0.415 | 0.205 |
| predicted_OBP | 0.393 | 0.014 |
| predicted_R | 1.337 | 0.630 |
| predicted_RBI | 1.508 | 0.698 |
| predicted_SLG | 0.545 | 0.034 |
| predicted_SO | 1.491 | 0.576 |
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.403 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.981 | 0.000 |
| predicted_AVG | 0.285 | 0.018 |
| predicted_BB | 1.093 | 0.021 |
| predicted_H | 1.704 | 0.080 |
| predicted_HBP | 0.103 | 0.000 |
| predicted_HR | 0.435 | 0.021 |
| predicted_OBP | 0.395 | 0.003 |
| predicted_R | 1.452 | 0.115 |
| predicted_RBI | 1.638 | 0.130 |
| predicted_SLG | 0.571 | 0.026 |
| predicted_SO | 1.462 | -0.030 |
AB rounded to 6 (raw=5.98), rates preserved: AVG=0.285 HR/AB=0.073
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 2.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.403 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.019 |
| predicted_AVG | 0.333 | 0.048 |
| predicted_BB | 1.000 | -0.093 |
| predicted_H | 2.000 | 0.296 |
| predicted_HR | 0.000 | -0.435 |
| predicted_OBP | 0.429 | 0.034 |
| predicted_R | 1.000 | -0.452 |
| predicted_RBI | 2.000 | 0.362 |
| predicted_SLG | 0.333 | -0.238 |
| predicted_SO | 1.000 | -0.462 |
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 | -2.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.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 | - | 15.000 | 5.000 | 2.000 | 0.000 | 2.000 | 7.000 | 6.000 | 6.000 | 3.000 | 0.3333 | 0.5238 | 0.8667 | 0.3333 | 0.1333 | 0.4667 | 0.4000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 30.000 | 7.000 | 2.000 | 0.000 | 3.000 | 10.000 | 8.000 | 11.000 | 10.000 | 0.2333 | 0.4524 | 0.6000 | 0.2333 | 0.1000 | 0.3333 | 0.3667 | 0.3333 |
| season | 0.60 | 54 | - | 704.000 | 202.000 | 40.000 | 0.000 | 37.000 | 137.000 | 133.000 | 79.000 | 172.000 | 0.2869 | 0.3638 | 0.5014 | 0.2869 | 0.0526 | 0.1946 | 0.1122 | 0.2443 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6460 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.8340 |
| predicted_AVG | 0.2842 |
| predicted_BB | 1.9030 |
| predicted_H | 2.5100 |
| predicted_HBP | 0.1030 |
| predicted_HR | 0.6760 |
| predicted_OBP | 0.4099 |
| predicted_R | 2.1410 |
| predicted_RBI | 2.3980 |
| predicted_SLG | 0.5874 |
| predicted_SO | 2.2270 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2130 | 0.6460 | 0.4032 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7450 | 8.8340 | 5.9806 | model_form_blend |
| predicted_AVG | 0.2540 | 0.2842 | 0.2673 | model_form_blend |
| predicted_BB | 0.4200 | 1.9030 | 1.0715 | model_form_blend |
| predicted_H | 0.9300 | 2.5100 | 1.6241 | model_form_blend |
| predicted_HBP | - | 0.1030 | 0.1030 | form_only |
| predicted_HR | 0.2100 | 0.6760 | 0.4147 | model_form_blend |
| predicted_OBP | 0.3790 | 0.4099 | 0.3926 | model_form_blend |
| predicted_R | 0.7070 | 2.1410 | 1.3369 | model_form_blend |
| predicted_RBI | 0.8100 | 2.3980 | 1.5076 | model_form_blend |
| predicted_SLG | 0.5110 | 0.5874 | 0.5446 | model_form_blend |
| predicted_SO | 0.9150 | 2.2270 | 1.4914 | 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 | 188 |
| Season rows before report date | 188 |
| Report year | 2026 |
| Profile rows used | 188 |
| 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.287 |
| 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 | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 4 |
| 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 | 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 | LF-1B |
| gameID | 20260606_MIL@COL |
| game_type | full |
| mlbID | 641343 |
| playerID | 641343 |
| playerName | Jake Bauers |
| pos | 1B |
| started | True |
| startingPosition | LF |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-06 |
| sl_k_percent | 22.2 |
| sl_bb_percent | 12.2 |
| sl_woba | 0.386 |
| sl_xwoba | 0.365 |
| sl_xba | 0.267 |
| sl_xslg | 0.485 |
| sl_sweet_spot_percent | 30.8 |
| sl_barrel_batted_rate | 13.4 |
| sl_hard_hit_percent | 54.5 |
| sl_exit_velocity_avg | 92.4 |
| sl_launch_angle_avg | 8.6 |
| sl_whiff_percent | 24.9 |
| 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.377 | 1.000 | 0.000 | Hitting_2B | 0.371 | 0.000 | 0.629 | 1.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.014 | 1.000 | -0.014 | -1.000 |
| predicted_AB | 3.478 | 4.000 | 5.000 | Hitting_AB | 3.429 | 5.000 | 0.571 | -1.000 |
| predicted_AVG | 0.277 | 0.500 | 0.400 | Hitting_AVG | 0.338 | 0.600 | 0.162 | -0.100 |
| predicted_BB | 0.290 | 0.000 | 0.000 | Hitting_BB | 0.300 | 0.000 | -0.300 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.890 | 2.000 | 2.000 | Hitting_H | 1.157 | 3.000 | 0.843 | -1.000 |
| predicted_HR | 0.070 | 1.000 | 0.000 | Hitting_HR | 0.057 | 0.000 | 0.943 | 1.000 |
| predicted_OBP | 0.339 | 0.500 | 0.400 | Hitting_OBP | 0.411 | 0.600 | 0.089 | -0.100 |
| predicted_R | 0.594 | 1.000 | 1.000 | Hitting_R | 0.586 | 3.000 | 0.414 | -2.000 |
| predicted_RBI | 0.470 | 1.000 | 1.000 | Hitting_RBI | 0.543 | 1.000 | 0.457 | 0.000 |
| predicted_SLG | 0.428 | 1.500 | 0.400 | Hitting_SLG | 0.504 | 1.000 | 0.996 | 0.500 |
| predicted_SO | 0.420 | 1.000 | 1.000 | Hitting_SO | 0.414 | 0.000 | 0.586 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 10 |
| Deboosted Metrics | 1 |
| Better Metrics | 9 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_H: 0.8900 -> 2.0000 (boost 1.1100, better) |
| Biggest Deboost | predicted_BB: 0.2900 -> 0.0000 (deboost -0.2900, 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 | 7 | 1 | predicted_AB: 3.4780 -> 4.8502 (boost 1.3722, 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 | 5 | 0 | 5 | 0 | predicted_H: 1.4343 -> 1.5049 (boost 0.0706, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 3 | 6 | predicted_H: 1.5049 -> 2.0000 (boost 0.4951, better) | predicted_2B: 0.4144 -> 0.0000 (deboost -0.4144, worse) | AB rounded to 5 (raw=4.85), rates preserved: AVG=0.310 HR/AB=0.016 |
| 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 | 1 | 0 | 1 | 0 | predicted_R: 0.8668 -> 1.0000 (boost 0.1332, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.3103 -> 0.4000 (boost 0.0897, better) | predicted_SLG: 0.4705 -> 0.4000 (deboost -0.0705, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 2 | 1 | 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 |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.4000 -> 0.4705 (boost 0.0705, better) | predicted_AVG: 0.4000 -> 0.3103 (deboost -0.0897, 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.377,
"predicted_3B": 0.014,
"predicted_AB": 3.478,
"predicted_AVG": 0.277,
"predicted_BB": 0.29,
"predicted_H": 0.89,
"predicted_HR": 0.07,
"predicted_OBP": 0.339,
"predicted_R": 0.594,
"predicted_RBI": 0.47,
"predicted_SLG": 0.428,
"predicted_SO": 0.42
},
"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.4144,
"predicted_3B": 0.062,
"predicted_AB": 4.8502,
"predicted_AVG": 0.2968,
"predicted_BB": 0.3173,
"predicted_H": 1.4343,
"predicted_HBP": 0.143,
"predicted_HR": 0.0759,
"predicted_OBP": 0.3516,
"predicted_R": 0.798,
"predicted_RBI": 0.7241,
"predicted_SLG": 0.445,
"predicted_SO": 0.6169
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.377,
"after": 0.4144,
"delta": 0.0374,
"percent_delta": 0.0992,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.062,
"delta": 0.048,
"percent_delta": 3.4286,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.478,
"after": 4.8502,
"delta": 1.3722,
"percent_delta": 0.3945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.2968,
"delta": 0.0198,
"percent_delta": 0.0715,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.29,
"after": 0.3173,
"delta": 0.0273,
"percent_delta": 0.0941,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 1.4343,
"delta": 0.5443,
"percent_delta": 0.6116,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0759,
"delta": 0.0059,
"percent_delta": 0.0843,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3516,
"delta": 0.0126,
"percent_delta": 0.0372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.594,
"after": 0.798,
"delta": 0.204,
"percent_delta": 0.3434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.7241,
"delta": 0.2541,
"percent_delta": 0.5406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.445,
"delta": 0.017,
"percent_delta": 0.0397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.42,
"after": 0.6169,
"delta": 0.1969,
"percent_delta": 0.4688,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.478,
"after": 4.8502,
"delta": 1.3722,
"percent_delta": 0.3945,
"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.4144,
"predicted_3B": 0.062,
"predicted_AB": 4.8502,
"predicted_AVG": 0.3103,
"predicted_BB": 0.3236,
"predicted_H": 1.5049,
"predicted_HBP": 0.143,
"predicted_HR": 0.0797,
"predicted_OBP": 0.3534,
"predicted_R": 0.8668,
"predicted_RBI": 0.7865,
"predicted_SLG": 0.4705,
"predicted_SO": 0.6047
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4144,
"after": 0.4144,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.062,
"after": 0.062,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8502,
"after": 4.8502,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2968,
"after": 0.3103,
"delta": 0.0135,
"percent_delta": 0.0455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3173,
"after": 0.3236,
"delta": 0.0063,
"percent_delta": 0.0199,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4343,
"after": 1.5049,
"delta": 0.0706,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.0759,
"after": 0.0797,
"delta": 0.0038,
"percent_delta": 0.0501,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3516,
"after": 0.3534,
"delta": 0.0018,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.798,
"after": 0.8668,
"delta": 0.0688,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7241,
"after": 0.7865,
"delta": 0.0624,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.445,
"after": 0.4705,
"delta": 0.0255,
"percent_delta": 0.0573,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6169,
"after": 0.6047,
"delta": -0.0122,
"percent_delta": -0.0198,
"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.4343,
"after": 1.5049,
"delta": 0.0706,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.85), rates preserved: AVG=0.310 HR/AB=0.016",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.4144,
"after": 0.0,
"delta": -0.4144,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.062,
"after": 0.0,
"delta": -0.062,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.8502,
"after": 5.0,
"delta": 0.1498,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3236,
"after": 0.0,
"delta": -0.3236,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5049,
"after": 2.0,
"delta": 0.4951,
"percent_delta": 0.329,
"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.0797,
"after": 0.0,
"delta": -0.0797,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7865,
"after": 1.0,
"delta": 0.2135,
"percent_delta": 0.2715,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6047,
"after": 1.0,
"delta": 0.3953,
"percent_delta": 0.6537,
"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_H",
"before": 1.5049,
"after": 2.0,
"delta": 0.4951,
"percent_delta": 0.329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4144,
"after": 0.0,
"delta": -0.4144,
"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": 5.0,
"predicted_BB": 0.0,
"predicted_H": 2.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": 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_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": 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": 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": 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_R",
"before": 0.8668,
"after": 1.0,
"delta": 0.1332,
"percent_delta": 0.1537,
"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.8668,
"after": 1.0,
"delta": 0.1332,
"percent_delta": 0.1537,
"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.4,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.4,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.3103,
"after": 0.4,
"delta": 0.0897,
"percent_delta": 0.2891,
"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": 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_OBP",
"before": 0.3534,
"after": 0.4,
"delta": 0.0466,
"percent_delta": 0.1319,
"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.4705,
"after": 0.4,
"delta": -0.0705,
"percent_delta": -0.1498,
"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.3103,
"after": 0.4,
"delta": 0.0897,
"percent_delta": 0.2891,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4705,
"after": 0.4,
"delta": -0.0705,
"percent_delta": -0.1498,
"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": 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": 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": 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": 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": 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_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": 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.3103,
"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.3534,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4705,
"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.4,
"after": 0.3103,
"delta": -0.0897,
"percent_delta": -0.2243,
"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.3534,
"delta": -0.0466,
"percent_delta": -0.1165,
"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.4,
"after": 0.4705,
"delta": 0.0705,
"percent_delta": 0.1764,
"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.4,
"after": 0.4705,
"delta": 0.0705,
"percent_delta": 0.1764,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.4,
"after": 0.3103,
"delta": -0.0897,
"percent_delta": -0.2243,
"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.377,
"after": 1.0,
"delta": 0.623,
"percent_delta": 1.6525,
"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": 3.478,
"after": 4.0,
"delta": 0.522,
"percent_delta": 0.1501,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.3103,
"delta": 0.0333,
"percent_delta": 0.1202,
"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.89,
"after": 2.0,
"delta": 1.11,
"percent_delta": 1.2472,
"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.339,
"after": 0.3534,
"delta": 0.0144,
"percent_delta": 0.0425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.594,
"after": 1.0,
"delta": 0.406,
"percent_delta": 0.6835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 1.0,
"delta": 0.53,
"percent_delta": 1.1277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.4705,
"delta": 0.0425,
"percent_delta": 0.0993,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.42,
"after": 1.0,
"delta": 0.58,
"percent_delta": 1.381,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 10,
"deboosted_metrics": 1,
"better_metrics": 9,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.89,
"after": 2.0,
"delta": 1.11,
"percent_delta": 1.2472,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"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.377 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 3.478 | - |
| predicted_AVG | 0.277 | - |
| predicted_BB | 0.290 | - |
| predicted_H | 0.890 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.594 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.428 | - |
| predicted_SO | 0.420 | - |
Final model 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.414 | 0.037 |
| predicted_3B | 0.062 | 0.048 |
| predicted_AB | 4.850 | 1.372 |
| predicted_AVG | 0.297 | 0.020 |
| predicted_BB | 0.317 | 0.027 |
| predicted_H | 1.434 | 0.544 |
| predicted_HBP | 0.143 | - |
| predicted_HR | 0.076 | 0.006 |
| predicted_OBP | 0.352 | 0.013 |
| predicted_R | 0.798 | 0.204 |
| predicted_RBI | 0.724 | 0.254 |
| predicted_SLG | 0.445 | 0.017 |
| predicted_SO | 0.617 | 0.197 |
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.414 | 0.000 |
| predicted_3B | 0.062 | 0.000 |
| predicted_AB | 4.850 | 0.000 |
| predicted_AVG | 0.310 | 0.014 |
| predicted_BB | 0.324 | 0.006 |
| predicted_H | 1.505 | 0.071 |
| predicted_HBP | 0.143 | 0.000 |
| predicted_HR | 0.080 | 0.004 |
| predicted_OBP | 0.353 | 0.002 |
| predicted_R | 0.867 | 0.069 |
| predicted_RBI | 0.786 | 0.062 |
| predicted_SLG | 0.470 | 0.025 |
| predicted_SO | 0.605 | -0.012 |
AB rounded to 5 (raw=4.85), rates preserved: AVG=0.310 HR/AB=0.016
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 2.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 | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 2.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 | 2.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.414 |
| predicted_3B | 0.000 | -0.062 |
| predicted_AB | 5.000 | 0.150 |
| predicted_AVG | 0.400 | 0.090 |
| predicted_BB | 0.000 | -0.324 |
| predicted_H | 2.000 | 0.495 |
| predicted_HR | 0.000 | -0.080 |
| predicted_OBP | 0.400 | 0.047 |
| predicted_R | 1.000 | 0.133 |
| predicted_RBI | 1.000 | 0.214 |
| predicted_SLG | 0.400 | -0.070 |
| predicted_SO | 1.000 | 0.395 |
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 | 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 | 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 | 5.000 | 0.000 | 1.000 | 0.000 | 3.000 | 3.000 | 0.000 | 2.000 | 0.2941 | 0.2941 | 0.4118 | 0.2941 | 0.0000 | 0.1765 | 0.0000 | 0.1177 |
| last_10 | 0.20 | 10 | - | 31.000 | 11.000 | 1.000 | 1.000 | 0.000 | 5.000 | 4.000 | 0.000 | 4.000 | 0.3548 | 0.3548 | 0.4516 | 0.3548 | 0.0000 | 0.1613 | 0.0000 | 0.1290 |
| season | 0.60 | 25 | - | 240.000 | 81.000 | 26.000 | 1.000 | 4.000 | 38.000 | 41.000 | 20.000 | 29.000 | 0.3375 | 0.4089 | 0.5042 | 0.3375 | 0.0167 | 0.1583 | 0.0833 | 0.1208 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4660 |
| predicted_3B | 0.1280 |
| predicted_AB | 6.7400 |
| predicted_AVG | 0.3240 |
| predicted_BB | 0.3550 |
| predicted_H | 2.1840 |
| predicted_HBP | 0.1430 |
| predicted_HR | 0.0840 |
| predicted_OBP | 0.3689 |
| predicted_R | 1.0790 |
| predicted_RBI | 1.0740 |
| predicted_SLG | 0.4685 |
| predicted_SO | 0.8880 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3770 | 0.4660 | 0.4144 | model_form_blend |
| predicted_3B | 0.0140 | 0.1280 | 0.0620 | model_form_blend |
| predicted_AB | 3.4780 | 6.7400 | 4.8502 | model_form_blend |
| predicted_AVG | 0.2770 | 0.3240 | 0.2968 | model_form_blend |
| predicted_BB | 0.2900 | 0.3550 | 0.3173 | model_form_blend |
| predicted_H | 0.8900 | 2.1840 | 1.4343 | model_form_blend |
| predicted_HBP | - | 0.1430 | 0.1430 | form_only |
| predicted_HR | 0.0700 | 0.0840 | 0.0759 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3689 | 0.3516 | model_form_blend |
| predicted_R | 0.5940 | 1.0790 | 0.7980 | model_form_blend |
| predicted_RBI | 0.4700 | 1.0740 | 0.7241 | model_form_blend |
| predicted_SLG | 0.4280 | 0.4685 | 0.4450 | model_form_blend |
| predicted_SO | 0.4200 | 0.8880 | 0.6169 | 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 | 70 |
| Season rows before report date | 70 |
| 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 | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.338 |
| 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.6 |
| Hitting_BB | 0 |
| 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 | 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 | 1B |
| gameID | 20260607_MIL@COL |
| game_type | full |
| mlbID | 683734 |
| playerID | 683734 |
| playerName | Andrew Vaughn |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-07 |
| sl_k_percent | 11.1 |
| sl_bb_percent | 6.7 |
| sl_woba | 0.392 |
| sl_xwoba | 0.337 |
| sl_xba | 0.294 |
| sl_xslg | 0.402 |
| sl_sweet_spot_percent | 36.1 |
| sl_barrel_batted_rate | 2.8 |
| sl_hard_hit_percent | 44.4 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 8.8 |
| sl_whiff_percent | 18.8 |
| 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.237 | 0.000 | 1.000 | Hitting_2B | 0.234 | 2.000 | -0.234 | -2.000 |
| predicted_3B | 0.035 | 0.000 | 0.000 | Hitting_3B | 0.034 | 1.000 | -0.034 | -1.000 |
| predicted_AB | 3.468 | 4.000 | 6.000 | Hitting_AB | 3.429 | 5.000 | 0.571 | -1.000 |
| predicted_AVG | 0.259 | 0.000 | 0.333 | Hitting_AVG | 0.245 | 0.600 | -0.245 | -0.600 |
| predicted_BB | 0.578 | 0.000 | 1.000 | Hitting_BB | 0.583 | 0.000 | -0.583 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.091 | 0.000 | -0.091 | 0.000 |
| predicted_H | 0.770 | 0.000 | 2.000 | Hitting_H | 0.840 | 3.000 | -0.840 | -3.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_OBP | 0.350 | 0.000 | 0.429 | Hitting_OBP | 0.357 | 0.600 | -0.357 | -0.600 |
| predicted_R | 0.486 | 0.000 | 1.000 | Hitting_R | 0.486 | 2.000 | -0.486 | -2.000 |
| predicted_RBI | 0.480 | 0.000 | 1.000 | Hitting_RBI | 0.623 | 2.000 | -0.623 | -2.000 |
| predicted_SLG | 0.433 | 0.000 | 0.500 | Hitting_SLG | 0.368 | 1.400 | -0.368 | -1.400 |
| predicted_SO | 1.376 | 0.000 | 2.000 | Hitting_SO | 1.360 | 1.000 | -1.360 | -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 | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.4680 -> 4.0000 (boost 0.5320, better) |
| Biggest Deboost | predicted_SO: 1.3760 -> 0.0000 (deboost -1.3760, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.4680 -> 5.6218 (boost 2.1538, 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 | 4 | 0 | 4 | 0 | predicted_RBI: 0.8857 -> 0.9620 (boost 0.0763, better) | - | 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 | 5 | 3 | predicted_2B: 0.5266 -> 1.0000 (boost 0.4734, better) | predicted_3B: 0.1077 -> 0.0000 (deboost -0.1077, worse) | AB rounded to 6 (raw=5.62), rates preserved: AVG=0.273 HR/AB=0.014 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9296 -> 1.0000 (boost 0.0704, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2726 -> 0.3330 (boost 0.0604, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 7 | 0 | 7 | 1 | 6 | - | predicted_AB: 6.0000 -> 4.0000 (deboost -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.2726 (deboost -0.0604, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669003",
"player_name": "Garrett Mitchell",
"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.237,
"predicted_3B": 0.035,
"predicted_AB": 3.468,
"predicted_AVG": 0.259,
"predicted_BB": 0.578,
"predicted_H": 0.77,
"predicted_HR": 0.08,
"predicted_OBP": 0.35,
"predicted_R": 0.486,
"predicted_RBI": 0.48,
"predicted_SLG": 0.433,
"predicted_SO": 1.376
},
"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.5266,
"predicted_3B": 0.1077,
"predicted_AB": 5.6218,
"predicted_AVG": 0.2682,
"predicted_BB": 0.8733,
"predicted_H": 1.4609,
"predicted_HBP": 0.09,
"predicted_HR": 0.0756,
"predicted_OBP": 0.3625,
"predicted_R": 0.8558,
"predicted_RBI": 0.8857,
"predicted_SLG": 0.4449,
"predicted_SO": 2.098
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.237,
"after": 0.5266,
"delta": 0.2896,
"percent_delta": 1.2219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.035,
"after": 0.1077,
"delta": 0.0727,
"percent_delta": 2.0771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.468,
"after": 5.6218,
"delta": 2.1538,
"percent_delta": 0.621,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2682,
"delta": 0.0092,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.578,
"after": 0.8733,
"delta": 0.2953,
"percent_delta": 0.5109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.4609,
"delta": 0.6909,
"percent_delta": 0.8973,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0756,
"delta": -0.0044,
"percent_delta": -0.055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3625,
"delta": 0.0125,
"percent_delta": 0.0357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.486,
"after": 0.8558,
"delta": 0.3698,
"percent_delta": 0.7609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.8857,
"delta": 0.4057,
"percent_delta": 0.8452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.433,
"after": 0.4449,
"delta": 0.0119,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.376,
"after": 2.098,
"delta": 0.722,
"percent_delta": 0.5247,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.468,
"after": 5.6218,
"delta": 2.1538,
"percent_delta": 0.621,
"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": 9,
"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.5266,
"predicted_3B": 0.1077,
"predicted_AB": 5.6218,
"predicted_AVG": 0.2726,
"predicted_BB": 0.8906,
"predicted_H": 1.5328,
"predicted_HBP": 0.09,
"predicted_HR": 0.0793,
"predicted_OBP": 0.3721,
"predicted_R": 0.9296,
"predicted_RBI": 0.962,
"predicted_SLG": 0.447,
"predicted_SO": 2.0565
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5266,
"after": 0.5266,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1077,
"after": 0.1077,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6218,
"after": 5.6218,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2682,
"after": 0.2726,
"delta": 0.0044,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8733,
"after": 0.8906,
"delta": 0.0173,
"percent_delta": 0.0198,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4609,
"after": 1.5328,
"delta": 0.0719,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.09,
"after": 0.09,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0756,
"after": 0.0793,
"delta": 0.0037,
"percent_delta": 0.0489,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3625,
"after": 0.3721,
"delta": 0.0096,
"percent_delta": 0.0265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8558,
"after": 0.9296,
"delta": 0.0738,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8857,
"after": 0.962,
"delta": 0.0763,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4449,
"after": 0.447,
"delta": 0.0021,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.098,
"after": 2.0565,
"delta": -0.0415,
"percent_delta": -0.0198,
"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.8857,
"after": 0.962,
"delta": 0.0763,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.62), rates preserved: AVG=0.273 HR/AB=0.014",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5266,
"after": 1.0,
"delta": 0.4734,
"percent_delta": 0.899,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1077,
"after": 0.0,
"delta": -0.1077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.6218,
"after": 6.0,
"delta": 0.3782,
"percent_delta": 0.0673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8906,
"after": 1.0,
"delta": 0.1094,
"percent_delta": 0.1228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5328,
"after": 2.0,
"delta": 0.4672,
"percent_delta": 0.3048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0793,
"after": 0.0,
"delta": -0.0793,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.962,
"after": 1.0,
"delta": 0.038,
"percent_delta": 0.0395,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0565,
"after": 2.0,
"delta": -0.0565,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.5266,
"after": 1.0,
"delta": 0.4734,
"percent_delta": 0.899,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_3B",
"before": 0.1077,
"after": 0.0,
"delta": -0.1077,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 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": 6.0,
"after": 6.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": 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_R",
"before": 0.9296,
"after": 1.0,
"delta": 0.0704,
"percent_delta": 0.0757,
"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": 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_R",
"before": 0.9296,
"after": 1.0,
"delta": 0.0704,
"percent_delta": 0.0757,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.5,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2726,
"after": 0.333,
"delta": 0.0604,
"percent_delta": 0.2216,
"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": 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_OBP",
"before": 0.3721,
"after": 0.429,
"delta": 0.0569,
"percent_delta": 0.1529,
"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.447,
"after": 0.5,
"delta": 0.053,
"percent_delta": 0.1186,
"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.2726,
"after": 0.333,
"delta": 0.0604,
"percent_delta": 0.2216,
"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": 1.0,
"after": 0.0,
"delta": -1.0,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.0,
"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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2726,
"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.3721,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.447,
"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.2726,
"delta": -0.0604,
"percent_delta": -0.1812,
"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.429,
"after": 0.3721,
"delta": -0.0569,
"percent_delta": -0.1326,
"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.5,
"after": 0.447,
"delta": -0.053,
"percent_delta": -0.106,
"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.2726,
"delta": -0.0604,
"percent_delta": -0.1812,
"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.237,
"after": 0.0,
"delta": -0.237,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.035,
"after": 0.0,
"delta": -0.035,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.468,
"after": 4.0,
"delta": 0.532,
"percent_delta": 0.1534,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2726,
"delta": 0.0136,
"percent_delta": 0.0525,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.578,
"after": 0.0,
"delta": -0.578,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"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.35,
"after": 0.3721,
"delta": 0.0221,
"percent_delta": 0.0631,
"direction": "boost",
"projection_effect": "better",
"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.48,
"after": 0.0,
"delta": -0.48,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.433,
"after": 0.447,
"delta": 0.014,
"percent_delta": 0.0323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.376,
"after": 0.0,
"delta": -1.376,
"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_AB",
"before": 3.468,
"after": 4.0,
"delta": 0.532,
"percent_delta": 0.1534,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.376,
"after": 0.0,
"delta": -1.376,
"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.237 | - |
| predicted_3B | 0.035 | - |
| predicted_AB | 3.468 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.578 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.350 | - |
| predicted_R | 0.486 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.433 | - |
| predicted_SO | 1.376 | - |
Final model 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.527 | 0.290 |
| predicted_3B | 0.108 | 0.073 |
| predicted_AB | 5.622 | 2.154 |
| predicted_AVG | 0.268 | 0.009 |
| predicted_BB | 0.873 | 0.295 |
| predicted_H | 1.461 | 0.691 |
| predicted_HBP | 0.090 | - |
| predicted_HR | 0.076 | -0.004 |
| predicted_OBP | 0.362 | 0.013 |
| predicted_R | 0.856 | 0.370 |
| predicted_RBI | 0.886 | 0.406 |
| predicted_SLG | 0.445 | 0.012 |
| predicted_SO | 2.098 | 0.722 |
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.527 | 0.000 |
| predicted_3B | 0.108 | 0.000 |
| predicted_AB | 5.622 | 0.000 |
| predicted_AVG | 0.273 | 0.004 |
| predicted_BB | 0.891 | 0.017 |
| predicted_H | 1.533 | 0.072 |
| predicted_HBP | 0.090 | 0.000 |
| predicted_HR | 0.079 | 0.004 |
| predicted_OBP | 0.372 | 0.010 |
| predicted_R | 0.930 | 0.074 |
| predicted_RBI | 0.962 | 0.076 |
| predicted_SLG | 0.447 | 0.002 |
| predicted_SO | 2.057 | -0.041 |
AB rounded to 6 (raw=5.62), rates preserved: AVG=0.273 HR/AB=0.014
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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 | 1.000 | 0.473 |
| predicted_3B | 0.000 | -0.108 |
| predicted_AB | 6.000 | 0.378 |
| predicted_AVG | 0.333 | 0.060 |
| predicted_BB | 1.000 | 0.109 |
| predicted_H | 2.000 | 0.467 |
| predicted_HR | 0.000 | -0.079 |
| predicted_OBP | 0.429 | 0.057 |
| predicted_R | 1.000 | 0.070 |
| predicted_RBI | 1.000 | 0.038 |
| predicted_SLG | 0.500 | 0.053 |
| predicted_SO | 2.000 | -0.057 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | -1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -2.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -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 | 3.000 | 1.000 | 0.000 | 3.000 | 3.000 | 2.000 | 4.000 | 0.3750 | 0.4444 | 0.6875 | 0.3750 | 0.0000 | 0.1875 | 0.1250 | 0.2500 |
| last_10 | 0.20 | 9 | - | 30.000 | 9.000 | 5.000 | 1.000 | 0.000 | 3.000 | 6.000 | 4.000 | 12.000 | 0.3000 | 0.4000 | 0.5333 | 0.3000 | 0.0000 | 0.1000 | 0.1333 | 0.4000 |
| season | 0.60 | 51 | - | 600.000 | 147.000 | 41.000 | 6.000 | 7.000 | 109.000 | 84.000 | 100.000 | 238.000 | 0.2450 | 0.3554 | 0.3683 | 0.2450 | 0.0117 | 0.1817 | 0.1667 | 0.3967 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8980 |
| predicted_3B | 0.2010 |
| predicted_AB | 8.3840 |
| predicted_AVG | 0.2800 |
| predicted_BB | 1.2520 |
| predicted_H | 2.3470 |
| predicted_HBP | 0.0900 |
| predicted_HR | 0.0700 |
| predicted_OBP | 0.3786 |
| predicted_R | 1.3300 |
| predicted_RBI | 1.4060 |
| predicted_SLG | 0.4601 |
| predicted_SO | 3.0240 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2370 | 0.8980 | 0.5266 | model_form_blend |
| predicted_3B | 0.0350 | 0.2010 | 0.1077 | model_form_blend |
| predicted_AB | 3.4680 | 8.3840 | 5.6218 | model_form_blend |
| predicted_AVG | 0.2590 | 0.2800 | 0.2682 | model_form_blend |
| predicted_BB | 0.5780 | 1.2520 | 0.8733 | model_form_blend |
| predicted_H | 0.7700 | 2.3470 | 1.4609 | model_form_blend |
| predicted_HBP | - | 0.0900 | 0.0900 | form_only |
| predicted_HR | 0.0800 | 0.0700 | 0.0756 | model_form_blend |
| predicted_OBP | 0.3500 | 0.3786 | 0.3625 | model_form_blend |
| predicted_R | 0.4860 | 1.3300 | 0.8558 | model_form_blend |
| predicted_RBI | 0.4800 | 1.4060 | 0.8857 | model_form_blend |
| predicted_SLG | 0.4330 | 0.4601 | 0.4449 | model_form_blend |
| predicted_SO | 1.3760 | 3.0240 | 2.0980 | 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 | 175 |
| Season rows before report date | 175 |
| Report year | 2026 |
| Profile rows used | 173 |
| 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.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 | 2 |
| Hitting_3B | 1 |
| 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 | 2 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 7 |
| 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 | 20260607_MIL@COL |
| game_type | full |
| mlbID | 669003 |
| playerID | 669003 |
| playerName | Garrett Mitchell |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-07 |
| sl_k_percent | 35.7 |
| sl_bb_percent | 14.3 |
| sl_woba | 0.339 |
| sl_xwoba | 0.334 |
| sl_xba | 0.224 |
| sl_xslg | 0.406 |
| sl_sweet_spot_percent | 30.2 |
| sl_barrel_batted_rate | 14.6 |
| sl_hard_hit_percent | 51.0 |
| sl_exit_velocity_avg | 92.8 |
| sl_launch_angle_avg | 4.8 |
| sl_whiff_percent | 37.5 |
| 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_2B | 0.231 | 0.000 | 0.000 | Hitting_2B | 0.231 | 1.000 | -0.231 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.613 | 3.000 | 6.000 | Hitting_AB | 3.613 | 3.000 | -0.613 | 0.000 |
| predicted_AVG | 0.217 | 0.333 | 0.167 | Hitting_AVG | 0.216 | 0.333 | 0.117 | 0.000 |
| predicted_BB | 0.329 | 0.000 | 1.000 | Hitting_BB | 0.329 | 1.000 | -0.329 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_H | 0.270 | 1.000 | 1.000 | Hitting_H | 0.780 | 1.000 | 0.220 | 0.000 |
| predicted_HR | 0.020 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.270 | 0.500 | 0.286 | Hitting_OBP | 0.286 | 0.400 | 0.214 | 0.100 |
| predicted_R | 0.324 | 0.000 | 1.000 | Hitting_R | 0.324 | 1.000 | -0.324 | -1.000 |
| predicted_RBI | 0.180 | 0.000 | 1.000 | Hitting_RBI | 0.382 | 2.000 | -0.382 | -2.000 |
| predicted_SLG | 0.305 | 0.333 | 0.167 | Hitting_SLG | 0.280 | 0.667 | 0.053 | -0.333 |
| predicted_SO | 0.428 | 0.000 | 1.000 | Hitting_SO | 0.428 | 0.000 | -0.428 | 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: 0.2700 -> 1.0000 (boost 0.7300, better) |
| Biggest Deboost | predicted_AB: 3.6130 -> 3.0000 (deboost -0.6130, 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 | 9 | 7 | 2 | 6 | 3 | predicted_AB: 3.6130 -> 5.9014 (boost 2.2884, better) | predicted_SLG: 0.3050 -> 0.2863 (deboost -0.0187, 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 | 1 | 3 | 1 | 3 | predicted_RBI: 0.6550 -> 0.7115 (boost 0.0565, better) | predicted_SLG: 0.2863 -> 0.2333 (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 | 5 | 4 | 1 | 3 | 2 | predicted_SO: 0.5663 -> 1.0000 (boost 0.4337, worse) | predicted_2B: 0.3580 -> 0.0000 (deboost -0.3580, worse) | AB rounded to 6 (raw=5.90), rates preserved: AVG=0.164 HR/AB=0.003 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5763 -> 1.0000 (boost 0.4237, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.2399 -> 0.2860 (boost 0.0461, better) | predicted_SLG: 0.2333 -> 0.1670 (deboost -0.0663, 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_HBP: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.1670 -> 0.2333 (boost 0.0663, better) | predicted_OBP: 0.2860 -> 0.2399 (deboost -0.0461, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "650859",
"player_name": "Luis Rengifo",
"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.231,
"predicted_3B": 0.0,
"predicted_AB": 3.613,
"predicted_AVG": 0.217,
"predicted_BB": 0.329,
"predicted_H": 0.27,
"predicted_HR": 0.02,
"predicted_OBP": 0.27,
"predicted_R": 0.324,
"predicted_RBI": 0.18,
"predicted_SLG": 0.305,
"predicted_SO": 0.428
},
"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.358,
"predicted_3B": 0.0004,
"predicted_AB": 5.9014,
"predicted_AVG": 0.209,
"predicted_BB": 0.5794,
"predicted_H": 0.921,
"predicted_HBP": 0.048,
"predicted_HR": 0.0165,
"predicted_OBP": 0.2711,
"predicted_R": 0.5306,
"predicted_RBI": 0.655,
"predicted_SLG": 0.2863,
"predicted_SO": 0.5777
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.231,
"after": 0.358,
"delta": 0.127,
"percent_delta": 0.5498,
"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": 3.613,
"after": 5.9014,
"delta": 2.2884,
"percent_delta": 0.6334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.217,
"after": 0.209,
"delta": -0.008,
"percent_delta": -0.0369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.329,
"after": 0.5794,
"delta": 0.2504,
"percent_delta": 0.7611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 0.921,
"delta": 0.651,
"percent_delta": 2.4111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.02,
"after": 0.0165,
"delta": -0.0035,
"percent_delta": -0.175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.27,
"after": 0.2711,
"delta": 0.0011,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.324,
"after": 0.5306,
"delta": 0.2066,
"percent_delta": 0.6377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.655,
"delta": 0.475,
"percent_delta": 2.6389,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.305,
"after": 0.2863,
"delta": -0.0187,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.428,
"after": 0.5777,
"delta": 0.1497,
"percent_delta": 0.3498,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 7,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.613,
"after": 5.9014,
"delta": 2.2884,
"percent_delta": 0.6334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.305,
"after": 0.2863,
"delta": -0.0187,
"percent_delta": -0.0613,
"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": 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.358,
"predicted_3B": 0.0004,
"predicted_AB": 5.9014,
"predicted_AVG": 0.1637,
"predicted_BB": 0.5909,
"predicted_H": 0.9663,
"predicted_HBP": 0.048,
"predicted_HR": 0.0173,
"predicted_OBP": 0.2399,
"predicted_R": 0.5763,
"predicted_RBI": 0.7115,
"predicted_SLG": 0.2333,
"predicted_SO": 0.5663
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.358,
"after": 0.358,
"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": 5.9014,
"after": 5.9014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.209,
"after": 0.1637,
"delta": -0.0453,
"percent_delta": -0.2167,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5794,
"after": 0.5909,
"delta": 0.0115,
"percent_delta": 0.0198,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.921,
"after": 0.9663,
"delta": 0.0453,
"percent_delta": 0.0492,
"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.0165,
"after": 0.0173,
"delta": 0.0008,
"percent_delta": 0.0485,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2711,
"after": 0.2399,
"delta": -0.0312,
"percent_delta": -0.1151,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5306,
"after": 0.5763,
"delta": 0.0457,
"percent_delta": 0.0861,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.655,
"after": 0.7115,
"delta": 0.0565,
"percent_delta": 0.0863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.2863,
"after": 0.2333,
"delta": -0.053,
"percent_delta": -0.1851,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5777,
"after": 0.5663,
"delta": -0.0114,
"percent_delta": -0.0197,
"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_RBI",
"before": 0.655,
"after": 0.7115,
"delta": 0.0565,
"percent_delta": 0.0863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2863,
"after": 0.2333,
"delta": -0.053,
"percent_delta": -0.1851,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.90), rates preserved: AVG=0.164 HR/AB=0.003",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.358,
"after": 0.0,
"delta": -0.358,
"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": 5.9014,
"after": 6.0,
"delta": 0.0986,
"percent_delta": 0.0167,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5909,
"after": 1.0,
"delta": 0.4091,
"percent_delta": 0.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9663,
"after": 1.0,
"delta": 0.0337,
"percent_delta": 0.0349,
"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.0173,
"after": 0.0,
"delta": -0.0173,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7115,
"after": 1.0,
"delta": 0.2885,
"percent_delta": 0.4055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5663,
"after": 1.0,
"delta": 0.4337,
"percent_delta": 0.7658,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5663,
"after": 1.0,
"delta": 0.4337,
"percent_delta": 0.7658,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.358,
"after": 0.0,
"delta": -0.358,
"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": 6.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": 6.0,
"after": 6.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.5763,
"after": 1.0,
"delta": 0.4237,
"percent_delta": 0.7352,
"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.5763,
"after": 1.0,
"delta": 0.4237,
"percent_delta": 0.7352,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1637,
"after": 0.167,
"delta": 0.0033,
"percent_delta": 0.0202,
"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.2399,
"after": 0.286,
"delta": 0.0461,
"percent_delta": 0.1922,
"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.2333,
"after": 0.167,
"delta": -0.0663,
"percent_delta": -0.2842,
"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.2399,
"after": 0.286,
"delta": 0.0461,
"percent_delta": 0.1922,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2333,
"after": 0.167,
"delta": -0.0663,
"percent_delta": -0.2842,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 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": 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_HBP",
"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": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.1637,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2399,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2333,
"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.167,
"after": 0.1637,
"delta": -0.0033,
"percent_delta": -0.0195,
"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.286,
"after": 0.2399,
"delta": -0.0461,
"percent_delta": -0.1614,
"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.167,
"after": 0.2333,
"delta": 0.0663,
"percent_delta": 0.3973,
"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.167,
"after": 0.2333,
"delta": 0.0663,
"percent_delta": 0.3973,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2399,
"delta": -0.0461,
"percent_delta": -0.1614,
"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.231,
"after": 0.0,
"delta": -0.231,
"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.613,
"after": 3.0,
"delta": -0.613,
"percent_delta": -0.1697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.217,
"after": 0.1637,
"delta": -0.0533,
"percent_delta": -0.2456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.329,
"after": 0.0,
"delta": -0.329,
"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.27,
"after": 0.2399,
"delta": -0.0301,
"percent_delta": -0.1115,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.324,
"after": 0.0,
"delta": -0.324,
"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.305,
"after": 0.2333,
"delta": -0.0717,
"percent_delta": -0.2351,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.428,
"after": 0.0,
"delta": -0.428,
"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": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.613,
"after": 3.0,
"delta": -0.613,
"percent_delta": -0.1697,
"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.000 | - |
| predicted_AB | 3.613 | - |
| predicted_AVG | 0.217 | - |
| predicted_BB | 0.329 | - |
| predicted_H | 0.270 | - |
| predicted_HR | 0.020 | - |
| predicted_OBP | 0.270 | - |
| predicted_R | 0.324 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.305 | - |
| predicted_SO | 0.428 | - |
Final model 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.358 | 0.127 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.901 | 2.288 |
| predicted_AVG | 0.209 | -0.008 |
| predicted_BB | 0.579 | 0.250 |
| predicted_H | 0.921 | 0.651 |
| predicted_HBP | 0.048 | - |
| predicted_HR | 0.017 | -0.003 |
| predicted_OBP | 0.271 | 0.001 |
| predicted_R | 0.531 | 0.207 |
| predicted_RBI | 0.655 | 0.475 |
| predicted_SLG | 0.286 | -0.019 |
| predicted_SO | 0.578 | 0.150 |
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.358 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.901 | 0.000 |
| predicted_AVG | 0.164 | -0.045 |
| predicted_BB | 0.591 | 0.011 |
| predicted_H | 0.966 | 0.045 |
| predicted_HBP | 0.048 | 0.000 |
| predicted_HR | 0.017 | 0.001 |
| predicted_OBP | 0.240 | -0.031 |
| predicted_R | 0.576 | 0.046 |
| predicted_RBI | 0.712 | 0.056 |
| predicted_SLG | 0.233 | -0.053 |
| predicted_SO | 0.566 | -0.011 |
AB rounded to 6 (raw=5.90), rates preserved: AVG=0.164 HR/AB=0.003
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.358 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.099 |
| predicted_AVG | 0.167 | 0.003 |
| predicted_BB | 1.000 | 0.409 |
| predicted_H | 1.000 | 0.034 |
| predicted_HR | 0.000 | -0.017 |
| predicted_OBP | 0.286 | 0.046 |
| predicted_R | 1.000 | 0.424 |
| predicted_RBI | 1.000 | 0.288 |
| predicted_SLG | 0.167 | -0.066 |
| predicted_SO | 1.000 | 0.434 |
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 | -3.000 |
| BB | 0.000 | -1.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 | 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 | - | 16.000 | 2.000 | 1.000 | 0.000 | 0.000 | 4.000 | 1.000 | 2.000 | 0.000 | 0.1250 | 0.2105 | 0.1875 | 0.1250 | 0.0000 | 0.2500 | 0.1250 | 0.0000 |
| last_10 | 0.20 | 8 | - | 32.000 | 7.000 | 1.000 | 0.000 | 0.000 | 5.000 | 4.000 | 4.000 | 1.000 | 0.2188 | 0.2973 | 0.2500 | 0.2188 | 0.0000 | 0.1562 | 0.1250 | 0.0312 |
| season | 0.60 | 52 | - | 625.000 | 135.000 | 40.000 | 0.000 | 0.000 | 66.000 | 56.000 | 57.000 | 74.000 | 0.2160 | 0.2855 | 0.2800 | 0.2160 | 0.0000 | 0.1056 | 0.0912 | 0.1184 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5210 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.8400 |
| predicted_AVG | 0.1988 |
| predicted_BB | 0.9010 |
| predicted_H | 1.7570 |
| predicted_HBP | 0.0480 |
| predicted_HR | 0.0120 |
| predicted_OBP | 0.2725 |
| predicted_R | 0.7960 |
| predicted_RBI | 1.2650 |
| predicted_SLG | 0.2623 |
| predicted_SO | 0.7700 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2310 | 0.5210 | 0.3580 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6130 | 8.8400 | 5.9014 | model_form_blend |
| predicted_AVG | 0.2170 | 0.1988 | 0.2090 | model_form_blend |
| predicted_BB | 0.3290 | 0.9010 | 0.5794 | model_form_blend |
| predicted_H | 0.2700 | 1.7570 | 0.9210 | model_form_blend |
| predicted_HBP | - | 0.0480 | 0.0480 | form_only |
| predicted_HR | 0.0200 | 0.0120 | 0.0165 | model_form_blend |
| predicted_OBP | 0.2700 | 0.2725 | 0.2711 | model_form_blend |
| predicted_R | 0.3240 | 0.7960 | 0.5306 | model_form_blend |
| predicted_RBI | 0.1800 | 1.2650 | 0.6550 | model_form_blend |
| predicted_SLG | 0.3050 | 0.2623 | 0.2863 | model_form_blend |
| predicted_SO | 0.4280 | 0.7700 | 0.5777 | 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 | 173 |
| 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 | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| 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 | 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 | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 1 |
| Hitting_SO | 0 |
| 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 | 3B |
| gameID | 20260607_MIL@COL |
| game_type | full |
| mlbID | 650859 |
| playerID | 650859 |
| playerName | Luis Rengifo |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-07 |
| sl_k_percent | 10.3 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.243 |
| sl_xwoba | 0.298 |
| sl_xba | 0.252 |
| sl_xslg | 0.344 |
| sl_sweet_spot_percent | 28.0 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 34.4 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 3.9 |
| sl_whiff_percent | 18.9 |
| 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_2B | 0.066 | 0.000 | 0.000 | Hitting_2B | 0.062 | 1.000 | -0.062 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.140 | 4.000 | 5.000 | Hitting_AB | 2.945 | 4.000 | 1.055 | 0.000 |
| predicted_AVG | 0.254 | 0.250 | 0.200 | Hitting_AVG | 0.201 | 0.250 | 0.049 | 0.000 |
| predicted_BB | 0.441 | 0.000 | 1.000 | Hitting_BB | 0.421 | 1.000 | -0.421 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.076 | 0.000 | -0.076 | 0.000 |
| predicted_H | 0.550 | 1.000 | 1.000 | Hitting_H | 0.593 | 1.000 | 0.407 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_OBP | 0.312 | 0.250 | 0.333 | Hitting_OBP | 0.297 | 0.400 | -0.047 | -0.150 |
| predicted_R | 0.375 | 0.000 | 1.000 | Hitting_R | 0.359 | 1.000 | -0.359 | -1.000 |
| predicted_RBI | 0.330 | 0.000 | 1.000 | Hitting_RBI | 0.290 | 1.000 | -0.290 | -1.000 |
| predicted_SLG | 0.322 | 0.250 | 0.200 | Hitting_SLG | 0.251 | 0.500 | -0.001 | -0.250 |
| predicted_SO | 0.684 | 1.000 | 1.000 | Hitting_SO | 0.641 | 1.000 | 0.359 | 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_AB: 3.1400 -> 4.0000 (boost 0.8600, better) |
| Biggest Deboost | predicted_BB: 0.4410 -> 0.0000 (deboost -0.4410, 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 | 9 | 7 | 2 | 6 | 3 | predicted_AB: 3.1400 -> 4.9288 (boost 1.7888, better) | predicted_AVG: 0.2540 -> 0.2358 (deboost -0.0182, 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 | 2 | 2 | 2 | 2 | predicted_R: 0.5981 -> 0.6497 (boost 0.0516, better) | predicted_AVG: 0.2358 -> 0.2085 (deboost -0.0273, 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.6417 -> 1.0000 (boost 0.3583, better) | predicted_2B: 0.2094 -> 0.0000 (deboost -0.2094, worse) | AB rounded to 5 (raw=4.93), rates preserved: AVG=0.208 HR/AB=0.011 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6497 -> 1.0000 (boost 0.3503, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3123 -> 0.3330 (boost 0.0207, better) | predicted_SLG: 0.2855 -> 0.2000 (deboost -0.0855, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 0 | 4 | 0 | 4 | - | predicted_AB: 5.0000 -> 4.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.2000 -> 0.2855 (boost 0.0855, better) | predicted_OBP: 0.3330 -> 0.3123 (deboost -0.0207, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687401",
"player_name": "Joey Ortiz",
"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.066,
"predicted_3B": 0.0,
"predicted_AB": 3.14,
"predicted_AVG": 0.254,
"predicted_BB": 0.441,
"predicted_H": 0.55,
"predicted_HR": 0.05,
"predicted_OBP": 0.312,
"predicted_R": 0.375,
"predicted_RBI": 0.33,
"predicted_SLG": 0.322,
"predicted_SO": 0.684
},
"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.2094,
"predicted_3B": 0.0009,
"predicted_AB": 4.9288,
"predicted_AVG": 0.2358,
"predicted_BB": 0.7295,
"predicted_H": 0.9793,
"predicted_HBP": 0.004,
"predicted_HR": 0.0535,
"predicted_OBP": 0.3123,
"predicted_R": 0.5981,
"predicted_RBI": 0.5908,
"predicted_SLG": 0.3086,
"predicted_SO": 1.0566
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.066,
"after": 0.2094,
"delta": 0.1434,
"percent_delta": 2.1727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.14,
"after": 4.9288,
"delta": 1.7888,
"percent_delta": 0.5697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2358,
"delta": -0.0182,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.441,
"after": 0.7295,
"delta": 0.2885,
"percent_delta": 0.6542,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.55,
"after": 0.9793,
"delta": 0.4293,
"percent_delta": 0.7805,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0535,
"delta": 0.0035,
"percent_delta": 0.07,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3123,
"delta": 0.0003,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.375,
"after": 0.5981,
"delta": 0.2231,
"percent_delta": 0.5949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.5908,
"delta": 0.2608,
"percent_delta": 0.7903,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.322,
"after": 0.3086,
"delta": -0.0134,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.684,
"after": 1.0566,
"delta": 0.3726,
"percent_delta": 0.5447,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 7,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.14,
"after": 4.9288,
"delta": 1.7888,
"percent_delta": 0.5697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2358,
"delta": -0.0182,
"percent_delta": -0.0717,
"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": 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.2094,
"predicted_3B": 0.0009,
"predicted_AB": 4.9288,
"predicted_AVG": 0.2085,
"predicted_BB": 0.7439,
"predicted_H": 1.0275,
"predicted_HBP": 0.004,
"predicted_HR": 0.0562,
"predicted_OBP": 0.3123,
"predicted_R": 0.6497,
"predicted_RBI": 0.6417,
"predicted_SLG": 0.2855,
"predicted_SO": 1.0357
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2094,
"after": 0.2094,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9288,
"after": 4.9288,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2358,
"after": 0.2085,
"delta": -0.0273,
"percent_delta": -0.1158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7295,
"after": 0.7439,
"delta": 0.0144,
"percent_delta": 0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9793,
"after": 1.0275,
"delta": 0.0482,
"percent_delta": 0.0492,
"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.0535,
"after": 0.0562,
"delta": 0.0027,
"percent_delta": 0.0505,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3123,
"after": 0.3123,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5981,
"after": 0.6497,
"delta": 0.0516,
"percent_delta": 0.0863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5908,
"after": 0.6417,
"delta": 0.0509,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3086,
"after": 0.2855,
"delta": -0.0231,
"percent_delta": -0.0749,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0566,
"after": 1.0357,
"delta": -0.0209,
"percent_delta": -0.0198,
"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_R",
"before": 0.5981,
"after": 0.6497,
"delta": 0.0516,
"percent_delta": 0.0863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2358,
"after": 0.2085,
"delta": -0.0273,
"percent_delta": -0.1158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.93), rates preserved: AVG=0.208 HR/AB=0.011",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.2094,
"after": 0.0,
"delta": -0.2094,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9288,
"after": 5.0,
"delta": 0.0712,
"percent_delta": 0.0144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7439,
"after": 1.0,
"delta": 0.2561,
"percent_delta": 0.3443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0275,
"after": 1.0,
"delta": -0.0275,
"percent_delta": -0.0268,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.0562,
"after": 0.0,
"delta": -0.0562,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6417,
"after": 1.0,
"delta": 0.3583,
"percent_delta": 0.5584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0357,
"after": 1.0,
"delta": -0.0357,
"percent_delta": -0.0345,
"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.6417,
"after": 1.0,
"delta": 0.3583,
"percent_delta": 0.5584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2094,
"after": 0.0,
"delta": -0.2094,
"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": 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": 5.0,
"after": 5.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.6497,
"after": 1.0,
"delta": 0.3503,
"percent_delta": 0.5392,
"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.6497,
"after": 1.0,
"delta": 0.3503,
"percent_delta": 0.5392,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.2085,
"after": 0.2,
"delta": -0.0085,
"percent_delta": -0.0408,
"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.3123,
"after": 0.333,
"delta": 0.0207,
"percent_delta": 0.0663,
"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.2855,
"after": 0.2,
"delta": -0.0855,
"percent_delta": -0.2995,
"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.3123,
"after": 0.333,
"delta": 0.0207,
"percent_delta": 0.0663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2855,
"after": 0.2,
"delta": -0.0855,
"percent_delta": -0.2995,
"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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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_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.2085,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3123,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2855,
"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.2085,
"delta": 0.0085,
"percent_delta": 0.0423,
"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.333,
"after": 0.3123,
"delta": -0.0207,
"percent_delta": -0.0623,
"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.2,
"after": 0.2855,
"delta": 0.0855,
"percent_delta": 0.4275,
"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.2,
"after": 0.2855,
"delta": 0.0855,
"percent_delta": 0.4275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3123,
"delta": -0.0207,
"percent_delta": -0.0623,
"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.066,
"after": 0.0,
"delta": -0.066,
"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.14,
"after": 4.0,
"delta": 0.86,
"percent_delta": 0.2739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2085,
"delta": -0.0455,
"percent_delta": -0.1791,
"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.55,
"after": 1.0,
"delta": 0.45,
"percent_delta": 0.8182,
"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.312,
"after": 0.3123,
"delta": 0.0003,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.322,
"after": 0.2855,
"delta": -0.0365,
"percent_delta": -0.1134,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.684,
"after": 1.0,
"delta": 0.316,
"percent_delta": 0.462,
"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.14,
"after": 4.0,
"delta": 0.86,
"percent_delta": 0.2739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.441,
"after": 0.0,
"delta": -0.441,
"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.066 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.140 | - |
| predicted_AVG | 0.254 | - |
| predicted_BB | 0.441 | - |
| predicted_H | 0.550 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.312 | - |
| predicted_R | 0.375 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.322 | - |
| predicted_SO | 0.684 | - |
Final model 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.143 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.929 | 1.789 |
| predicted_AVG | 0.236 | -0.018 |
| predicted_BB | 0.730 | 0.289 |
| predicted_H | 0.979 | 0.429 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.053 | 0.003 |
| predicted_OBP | 0.312 | 0.000 |
| predicted_R | 0.598 | 0.223 |
| predicted_RBI | 0.591 | 0.261 |
| predicted_SLG | 0.309 | -0.013 |
| predicted_SO | 1.057 | 0.373 |
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 | 4.929 | 0.000 |
| predicted_AVG | 0.208 | -0.027 |
| predicted_BB | 0.744 | 0.014 |
| predicted_H | 1.028 | 0.048 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.056 | 0.003 |
| predicted_OBP | 0.312 | 0.000 |
| predicted_R | 0.650 | 0.052 |
| predicted_RBI | 0.642 | 0.051 |
| predicted_SLG | 0.285 | -0.023 |
| predicted_SO | 1.036 | -0.021 |
AB rounded to 5 (raw=4.93), rates preserved: AVG=0.208 HR/AB=0.011
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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 | 5.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.001 |
| predicted_AB | 5.000 | 0.071 |
| predicted_AVG | 0.200 | -0.008 |
| predicted_BB | 1.000 | 0.256 |
| predicted_H | 1.000 | -0.028 |
| predicted_HR | 0.000 | -0.056 |
| predicted_OBP | 0.333 | 0.021 |
| predicted_R | 1.000 | 0.350 |
| predicted_RBI | 1.000 | 0.358 |
| predicted_SLG | 0.200 | -0.085 |
| 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 | 4.000 | -1.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 | 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 | 3.000 | 2.000 | 0.000 | 0.000 | 3.000 | 2.000 | 3.000 | 2.000 | 0.2308 | 0.3750 | 0.3846 | 0.2308 | 0.0000 | 0.2308 | 0.2308 | 0.1538 |
| last_10 | 0.20 | 7 | - | 32.000 | 7.000 | 2.000 | 0.000 | 0.000 | 3.000 | 2.000 | 3.000 | 10.000 | 0.2188 | 0.2857 | 0.2812 | 0.2188 | 0.0000 | 0.0938 | 0.0938 | 0.3125 |
| season | 0.60 | 45 | - | 427.000 | 86.000 | 9.000 | 0.000 | 4.000 | 42.000 | 51.000 | 60.000 | 93.000 | 0.2014 | 0.2955 | 0.2506 | 0.2014 | 0.0094 | 0.0984 | 0.1405 | 0.2178 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3970 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.2690 |
| predicted_AVG | 0.2120 |
| predicted_BB | 1.1070 |
| predicted_H | 1.5410 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.0580 |
| predicted_OBP | 0.3127 |
| predicted_R | 0.8900 |
| predicted_RBI | 0.9320 |
| predicted_SLG | 0.2910 |
| predicted_SO | 1.5440 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0660 | 0.3970 | 0.2094 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.1400 | 7.2690 | 4.9288 | model_form_blend |
| predicted_AVG | 0.2540 | 0.2120 | 0.2358 | model_form_blend |
| predicted_BB | 0.4410 | 1.1070 | 0.7295 | model_form_blend |
| predicted_H | 0.5500 | 1.5410 | 0.9793 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0500 | 0.0580 | 0.0535 | model_form_blend |
| predicted_OBP | 0.3120 | 0.3127 | 0.3123 | model_form_blend |
| predicted_R | 0.3750 | 0.8900 | 0.5981 | model_form_blend |
| predicted_RBI | 0.3300 | 0.9320 | 0.5908 | model_form_blend |
| predicted_SLG | 0.3220 | 0.2910 | 0.3086 | model_form_blend |
| predicted_SO | 0.6840 | 1.5440 | 1.0566 | 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 | 136 |
| 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.201 |
| 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 | 1 |
| 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 | 20260607_MIL@COL |
| game_type | full |
| mlbID | 687401 |
| playerID | 687401 |
| playerName | Joey Ortiz |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-07 |
| sl_k_percent | 16.9 |
| sl_bb_percent | 13.0 |
| sl_woba | 0.259 |
| sl_xwoba | 0.298 |
| sl_xba | 0.224 |
| sl_xslg | 0.292 |
| sl_sweet_spot_percent | 21.3 |
| sl_barrel_batted_rate | 2.8 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 86.7 |
| sl_launch_angle_avg | 8.9 |
| sl_whiff_percent | 17.4 |
| 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_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 1.455 | 2.000 | -1.455 | -2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.909 | 1.000 | 0.091 | 0.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 3.909 | 4.000 | 1.091 | 1.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.127 | 5.200 | 0.873 | 0.800 |
| predicted_SO | 7.000 | 7.000 | 7.000 | Pitching_SO | 6.636 | 12.000 | 0.364 | -5.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 2 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 1 |
| Better Metrics | 2 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_SO: 3.0000 -> 7.0000 (boost 4.0000, better) |
| Biggest Deboost | predicted_ER: 2.0000 -> 1.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 | 1 | 1 | 2 | 0 | predicted_SO: 3.0000 -> 7.0000 (boost 4.0000, better) | predicted_ER: 2.0000 -> 1.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": "690986",
"player_name": "Kyle Harrison",
"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": 0.0,
"predicted_ER": 2.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 6.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": "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": 1.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 6.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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 7.0,
"delta": 4.0,
"percent_delta": 1.3333,
"direction": "boost",
"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_SO",
"before": 3.0,
"after": 7.0,
"delta": 4.0,
"percent_delta": 1.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 1.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 6.0,
"predicted_R": 1.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": 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": 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": 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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 7.0,
"delta": 4.0,
"percent_delta": 1.3333,
"direction": "boost",
"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_SO",
"before": 3.0,
"after": 7.0,
"delta": 4.0,
"percent_delta": 1.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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 | 2.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 6.000 | - |
| predicted_SO | 3.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 | 1.000 | -1.000 |
| predicted_H | 5.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 6.000 | 0.000 |
| predicted_SO | 7.000 | 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 | 27.200 | 3.000 | 19.000 | 7.000 | 38.000 | 2.000 | 0.9759 | 0.9398 | 0.1084 | 0.6867 | 0.2530 | 1.3735 | 0.0723 |
| last_10 | 0.35 | 10 | 52.100 | 9.000 | 39.000 | 15.000 | 65.000 | 3.000 | 1.5478 | 1.0318 | 0.1720 | 0.7452 | 0.2866 | 1.2420 | 0.0573 |
| season | 0.20 | 11 | 57.100 | 10.000 | 43.000 | 16.000 | 73.000 | 4.000 | 1.5698 | 1.0291 | 0.1744 | 0.7500 | 0.2791 | 1.2733 | 0.0698 |
| Metric | Value |
|---|---|
| predicted_BB | 1.6910 |
| predicted_ER | 1.4140 |
| predicted_ERA | 2.2538 |
| predicted_H | 4.4830 |
| predicted_HR | 0.5040 |
| predicted_IP | 5.2000 |
| predicted_SO | 6.7220 |
| predicted_WHIP | 1.0936 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 1.6910 | 0.8759 | model_form_blend |
| predicted_ER | 2.0000 | 1.4140 | 1.6965 | model_form_blend |
| predicted_ERA | - | 2.2538 | 2.2538 | form_only |
| predicted_H | 5.0000 | 4.4830 | 4.7322 | model_form_blend |
| predicted_HR | 1.0000 | 0.5040 | 0.7431 | model_form_blend |
| predicted_IP | 6.0000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 3.0000 | 6.7220 | 4.9279 | model_form_blend |
| predicted_WHIP | - | 1.0936 | 1.0936 | 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 | 11 |
| Season rows before report date | 11 |
| Report year | 2026 |
| Profile rows used | 11 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 6.0 |
| H | 5 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 7 |
| HR | 1 |
| BF | 23 |
| 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 | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 23 |
| Pitching_ER | 1 |
| Pitching_ERA | 1.57 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 2 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.2 |
| Pitching_Pitches | 106 |
| Pitching_R | 1 |
| Pitching_SO | 12 |
| Pitching_Strikes | 70 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260602_SF@MIL |
| game_type | full |
| mlbID | 690986 |
| playerID | 690986 |
| playerName | Kyle Harrison |
| pos | P |
| started | True |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-02 |
| sl_k_percent | 31.9 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.262 |
| sl_xwoba | 0.28 |
| sl_sweet_spot_percent | 37.2 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 28.5 |
| sl_whiff_percent | 29.5 |
| sl_swing_percent | 50.5 |
| sl_avg_best_speed | 78.862499851 |
| sl_avg_hyper_speed | 93.180794254 |
| 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.679 | 1.000 | -0.679 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.357 | 1.000 | -0.357 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.143 | 1.000 | -1.143 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.236 | 1.000 | -0.236 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.893 | 1.000 | -0.893 | 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": "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.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 | 7.100 | 2.000 | 6.000 | 2.000 | 7.000 | 0.000 | 2.4545 | 1.0909 | 0.2727 | 0.8182 | 0.2727 | 0.9546 | 0.0000 |
| last_10 | 0.35 | 10 | 13.100 | 4.000 | 14.000 | 4.000 | 15.000 | 0.000 | 2.7000 | 1.3500 | 0.3000 | 1.0500 | 0.3000 | 1.1250 | 0.0000 |
| season | 0.20 | 28 | 38.100 | 10.000 | 32.000 | 19.000 | 53.000 | 1.000 | 2.3478 | 1.3304 | 0.2609 | 0.8348 | 0.4956 | 1.3826 | 0.0261 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4100 |
| predicted_ER | 0.4340 |
| predicted_ERA | 3.2528 |
| predicted_H | 1.1100 |
| predicted_HR | 0.0700 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.2420 |
| predicted_WHIP | 1.2663 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4100 | 0.1976 | model_form_blend |
| predicted_ER | 0.0000 | 0.4340 | 0.2092 | model_form_blend |
| predicted_ERA | - | 3.2528 | 3.2528 | form_only |
| predicted_H | 0.0000 | 1.1100 | 0.5349 | model_form_blend |
| predicted_HR | 0.0000 | 0.0700 | 0.0337 | model_form_blend |
| predicted_IP | 1.0000 | 1.1000 | 1.2000 | model_form_blend |
| predicted_SO | 1.0000 | 1.2420 | 1.1166 | model_form_blend |
| predicted_WHIP | - | 1.2663 | 1.2663 | 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 | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.35 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 18 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260605_MIL@COL |
| game_type | full |
| mlbID | 676879 |
| playerID | 676879 |
| playerName | Aaron Ashby |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-05 |
| sl_k_percent | 32.5 |
| sl_bb_percent | 11.7 |
| sl_woba | 0.287 |
| sl_xwoba | 0.27 |
| sl_sweet_spot_percent | 28.1 |
| sl_barrel_batted_rate | 4.5 |
| sl_hard_hit_percent | 41.6 |
| sl_whiff_percent | 32.8 |
| sl_swing_percent | 41.1 |
| sl_avg_best_speed | 75.997981136 |
| sl_avg_hyper_speed | 94.648944091 |
| 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.375 | 0.000 | -0.375 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.417 | 1.000 | 0.583 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.792 | 3.000 | 1.208 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.862 | 1.000 | 0.138 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.958 | 0.000 | -0.958 | 0.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_SO: 2.0000 -> 0.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 | pitcher_quality_run_redistribution | 1 | 1 | 0 | 0 | 1 | predicted_ER: 0.0000 -> 1.0000 (boost 1.0000, worse) | - | Runs moved off a protected strong starter and assigned to bullpen exposure to keep team totals coherent. |
| 3 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_SO: 2.0000 -> 0.0000 (deboost -2.0000, worse) | 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": 2.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": "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": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"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": 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": 0,
"worse_metrics": 1,
"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": null
},
"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": 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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"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": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"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_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.0,
"after": 0.0,
"delta": -2.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 | 2.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 | 2.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 1.000 | 0.000 |
| predicted_SO | 2.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 | 1.000 | 5.000 | 2.000 | 5.000 | 0.000 | 1.8000 | 1.4000 | 0.2000 | 1.0000 | 0.4000 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 5.000 | 9.000 | 6.000 | 9.000 | 1.000 | 4.5000 | 1.5000 | 0.5000 | 0.9000 | 0.6000 | 0.9000 | 0.1000 |
| season | 0.20 | 24 | 22.100 | 10.000 | 19.000 | 9.000 | 23.000 | 2.000 | 4.0299 | 1.2537 | 0.4478 | 0.8508 | 0.4030 | 1.0298 | 0.0896 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4140 |
| predicted_ER | 0.4240 |
| predicted_ERA | 3.8139 |
| predicted_H | 0.9470 |
| predicted_HR | 0.0990 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9520 |
| predicted_WHIP | 1.3612 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4140 | 0.1762 | model_form_blend |
| predicted_ER | 0.0000 | 0.4240 | 0.1804 | model_form_blend |
| predicted_ERA | - | 3.8139 | 3.8139 | form_only |
| predicted_H | 2.0000 | 0.9470 | 1.5519 | model_form_blend |
| predicted_HR | 0.0000 | 0.0990 | 0.0421 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.9520 | 1.5540 | model_form_blend |
| predicted_WHIP | - | 1.3612 | 1.3612 | 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 | 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 | 6 |
| Pitching_ER | 1 |
| Pitching_ERA | 4.03 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260602_SF@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-02 |
| sl_k_percent | 24.2 |
| sl_bb_percent | 9.5 |
| sl_woba | 0.277 |
| sl_xwoba | 0.279 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 3.2 |
| sl_hard_hit_percent | 33.3 |
| sl_whiff_percent | 24.2 |
| sl_swing_percent | 41.0 |
| sl_avg_best_speed | 77.512702258 |
| sl_avg_hyper_speed | 93.054648871 |
| 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 | 1.000 | -0.292 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.500 | 2.000 | -0.500 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.792 | 3.000 | -0.792 | -3.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.958 | 1.000 | 0.042 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.208 | 1.000 | -1.208 | -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: 2.0000 -> 0.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 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_SO: 2.0000 -> 0.0000 (deboost -2.0000, worse) | 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": 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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.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 | 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 | 4.000 | 1.000 | 7.000 | 0.000 | 3.6000 | 1.0000 | 0.4000 | 0.8000 | 0.2000 | 1.4000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 3.000 | 7.000 | 2.000 | 14.000 | 0.000 | 2.7000 | 0.9000 | 0.3000 | 0.7000 | 0.2000 | 1.4000 | 0.0000 |
| season | 0.20 | 23 | 23.000 | 8.000 | 17.000 | 7.000 | 29.000 | 0.000 | 3.1304 | 1.0435 | 0.3478 | 0.7391 | 0.3044 | 1.2609 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2960 |
| predicted_ER | 0.4230 |
| predicted_ERA | 3.8054 |
| predicted_H | 0.8600 |
| predicted_HR | 0.0730 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1430 |
| predicted_WHIP | 1.1562 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2960 | 0.1269 | model_form_blend |
| predicted_ER | 0.0000 | 0.4230 | 0.1813 | model_form_blend |
| predicted_ERA | - | 3.8054 | 3.8054 | form_only |
| predicted_H | 0.0000 | 0.8600 | 0.3686 | model_form_blend |
| predicted_HR | 0.0000 | 0.0730 | 0.0313 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.1430 | 1.6327 | model_form_blend |
| predicted_WHIP | - | 1.1562 | 1.1562 | 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 | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 7 |
| Pitching_ER | 2 |
| Pitching_ERA | 4.70 |
| 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 | 18 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W, BS |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260605_MIL@COL |
| game_type | full |
| mlbID | 656730 |
| playerID | 656730 |
| playerName | Trevor Megill |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-05 |
| sl_k_percent | 29.9 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.258 |
| sl_xwoba | 0.261 |
| sl_sweet_spot_percent | 28.3 |
| sl_barrel_batted_rate | 5.0 |
| sl_hard_hit_percent | 43.3 |
| sl_whiff_percent | 34.8 |
| sl_swing_percent | 51.2 |
| sl_avg_best_speed | 81.034909286 |
| sl_avg_hyper_speed | 94.455970893 |
| Field | Value |
|---|---|
| Pitcher | Jeffrey Springs |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1052 |
| ESPN Rank | 78 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2285 |
| Avg Velo | 85.6306 |
| Avg Spin | 2037.0652 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 5 |
| Pre H | 7 |
| Pre BB | 1 |
| Pre SO | 3 |
| Season ERA | 4.3714 |
| Season WHIP | 1.2429 |
| Role Avg IP | 5.3850 |
| Recent Avg IP | 5.2000 |
| Last Start IP | 3.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"opponent": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"edges": {
"quality_edge": -0.4741,
"offense_edge": -0.0315,
"opponent_offense_edge": 0.1401,
"defense_strength": -0.0905,
"opponent_defense_weakness": -0.2453,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9727,
"run_prevention": 1.0552,
"strikeout": 0.9746
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "605488",
"profile": {
"available": true,
"pitcher_id": "605488",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 271.0,
"k_percent": 20.3,
"bb_percent": 7.1,
"woba": 0.334,
"xwoba": 0.315,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 36.3,
"avg_best_speed": 76.7243,
"avg_hyper_speed": 93.4607,
"whiff_percent": 22.8,
"swing_percent": 47.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1513,
"command_and_miss": -0.2171,
"regression_edge": 0.5429,
"xwoba_edge": -0.0143,
"barrel_edge": -0.5111,
"hard_hit_edge": 0.3286,
"whiff_edge": -0.4286,
"bb_edge": 0.5,
"pitch_design_score": -0.2285
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "605488",
"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": 85.63061442528043,
"release_spin_rate": 2037.065200521358,
"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": 85.63061442528043,
"release_spin_rate": 2037.065200521358,
"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.6306,
"release_spin_rate": 2037.0652,
"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.2285,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.6318,
"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.1052,
"sample_weight": 1.0,
"run_prevention_factor": 1.0089,
"strikeout_factor": 0.968,
"walk_factor": 0.96,
"homer_factor": 1.0282,
"woba_minus_xwoba": 0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "605488",
"espn_id": 35397,
"player_name": "Jeffrey Springs",
"team": "ATH",
"role": "pitcher",
"espn_rank": 78,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 78,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 4.0,
"qs_rank": 61,
"era_value": 4.3714,
"era_rank": 55.0,
"w_value": 3.0,
"w_rank": 87,
"l_value": 6.0,
"l_rank": 11,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 70.0,
"ip_rank": 43,
"h_value": 66.0,
"h_rank": 34,
"er_value": 34.0,
"er_rank": 33,
"hr_value": 14.0,
"hr_rank": 7,
"bb_value": 21.0,
"bb_rank": 75,
"k_value": 60.0,
"k_rank": 62,
"k_per_9_value": 7.714286,
"k_per_9_rank": 38,
"whip_value": 1.2428,
"whip_rank": 43.0,
"war_value": 1.04,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0089,
"adjusted": 3
},
"predicted_H": {
"original": 5.0,
"factor": 1.0089,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.96,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0282,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.968,
"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": 51.2,
"ER": 31,
"H": 58,
"BB": 15,
"SO": 45,
"HR": 14,
"ERA": 5.4,
"WHIP": 1.4129032258064518,
"K9": 7.838709677419355,
"HR9": 2.438709677419355,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "605488",
"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": 85.63061442528043,
"release_spin_rate": 2037.065200521358,
"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": 85.63061442528043,
"release_spin_rate": 2037.065200521358,
"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.6306,
"release_spin_rate": 2037.0652,
"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.2285,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.6318,
"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": "605488",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 5.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 26.0,
"ER": 15.0,
"R": 19.0,
"H": 28.0,
"BB": 9.0,
"SO": 21.0,
"HR": 7.0,
"BF": 114.0,
"Pitches": 455.0
},
"per_game": {
"IP": 5.1,
"ER": 3.0,
"R": 3.8,
"H": 5.6,
"BB": 1.8,
"SO": 4.2,
"HR": 1.4,
"BF": 22.8,
"Pitches": 91.0
},
"rates": {
"ERA": 5.1923,
"WHIP": 1.4231,
"ER_per_IP": 0.57692,
"H_per_IP": 1.07692,
"BB_per_IP": 0.34615,
"SO_per_IP": 0.80769,
"HR_per_IP": 0.26923
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 51.2,
"ER": 31.0,
"R": 35.0,
"H": 58.0,
"BB": 15.0,
"SO": 45.0,
"HR": 14.0,
"BF": 227.0,
"Pitches": 863.0
},
"per_game": {
"IP": 5.1,
"ER": 3.1,
"R": 3.5,
"H": 5.8,
"BB": 1.5,
"SO": 4.5,
"HR": 1.4,
"BF": 22.7,
"Pitches": 86.3
},
"rates": {
"ERA": 5.4,
"WHIP": 1.4129,
"ER_per_IP": 0.6,
"H_per_IP": 1.12258,
"BB_per_IP": 0.29032,
"SO_per_IP": 0.87097,
"HR_per_IP": 0.27097
}
},
"season": {
"games": 13,
"totals": {
"IP": 70.0,
"ER": 34.0,
"R": 38.0,
"H": 66.0,
"BB": 21.0,
"SO": 60.0,
"HR": 14.0,
"BF": 295.0,
"Pitches": 1142.0
},
"per_game": {
"IP": 5.1,
"ER": 2.6154,
"R": 2.9231,
"H": 5.0769,
"BB": 1.6154,
"SO": 4.6154,
"HR": 1.0769,
"BF": 22.6923,
"Pitches": 87.8462
},
"rates": {
"ERA": 4.3714,
"WHIP": 1.2429,
"ER_per_IP": 0.48571,
"H_per_IP": 0.94286,
"BB_per_IP": 0.3,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.2
}
}
},
"weighted_prediction": {
"predicted_IP": 5.1,
"predicted_ER": 2.901,
"predicted_H": 5.525,
"predicted_BB": 1.762,
"predicted_SO": 4.619,
"predicted_HR": 1.192,
"predicted_ERA": 4.896,
"predicted_WHIP": 1.3664
}
}{
"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.1,
"form": 5.1,
"final": 5.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 5.0,
"form": 2.901,
"final": 3.882,
"source": "model_form_blend"
},
"predicted_H": {
"model": 7.0,
"form": 5.525,
"final": 6.2144,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.762,
"final": 1.4059,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 4.619,
"final": 3.8623,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 1.192,
"final": 1.1023,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.896,
"final": 4.896,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3664,
"final": 1.3664,
"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.2094 |
| ESPN Rank | 49 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0741 |
| Avg Velo | 88.3862 |
| Avg Spin | 2370.4678 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.4000 |
| Season WHIP | 1.5000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"opponent": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"edges": {
"quality_edge": -0.4741,
"offense_edge": -0.0315,
"opponent_offense_edge": 0.1401,
"defense_strength": -0.0905,
"opponent_defense_weakness": -0.2453,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9727,
"run_prevention": 1.0552,
"strikeout": 0.9746
},
"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": 24.8,
"bb_percent": 16.1,
"woba": 0.296,
"xwoba": 0.288,
"sweet_spot_percent": 22.8,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 26.6,
"avg_best_speed": 73.9391,
"avg_hyper_speed": 92.3398,
"whiff_percent": 25.9,
"swing_percent": 42.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8933,
"command_and_miss": -0.2229,
"regression_edge": 0.2286,
"xwoba_edge": 0.7571,
"barrel_edge": 0.7333,
"hard_hit_edge": 1.7143,
"whiff_edge": 0.0143,
"bb_edge": -1.75,
"pitch_design_score": -0.0741
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663687",
"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": 88.38615618744159,
"release_spin_rate": 2370.467830347965,
"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": 88.38615618744159,
"release_spin_rate": 2370.467830347965,
"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.3862,
"release_spin_rate": 2370.4678,
"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.0741,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.5296,
"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.2094,
"sample_weight": 0.456,
"run_prevention_factor": 0.9822,
"strikeout_factor": 1.0052,
"walk_factor": 1.0638,
"homer_factor": 0.9316,
"woba_minus_xwoba": 0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663687",
"espn_id": 41364,
"player_name": "Hogan Harris",
"team": "ATH",
"role": "pitcher",
"espn_rank": 49,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 49,
"gp_value": 33.0,
"gp_rank": 3,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.4,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 5.0,
"sv_rank": 24,
"hld_value": 9.0,
"hld_rank": 22,
"ip_value": 30.0,
"ip_rank": 198,
"h_value": 23.0,
"h_rank": 252,
"er_value": 8.0,
"er_rank": 349,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 22.0,
"bb_rank": 62,
"k_value": 34.0,
"k_rank": 170,
"k_per_9_value": 10.2,
"k_per_9_rank": 23,
"whip_value": 1.5,
"whip_rank": null,
"war_value": 1.38,
"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": 1.0291,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9688,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0024,
"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": 5,
"SO": 11,
"HR": 0,
"ERA": 2.0,
"WHIP": 1.1111111111111112,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "663687",
"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": 88.38615618744159,
"release_spin_rate": 2370.467830347965,
"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": 88.38615618744159,
"release_spin_rate": 2370.467830347965,
"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.3862,
"release_spin_rate": 2370.4678,
"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.0741,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.5296,
"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.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"role": "pitcher",
"player_id": "663687",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 33,
"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": 6.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 81.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.4,
"Pitches": 16.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.28571,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 5.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.5,
"BB": 0.5,
"SO": 1.1,
"HR": 0.0,
"BF": 3.8,
"Pitches": 16.0
},
"rates": {
"ERA": 2.0,
"WHIP": 1.1111,
"ER_per_IP": 0.22222,
"H_per_IP": 0.55556,
"BB_per_IP": 0.55556,
"SO_per_IP": 1.22222,
"HR_per_IP": 0.0
}
},
"season": {
"games": 33,
"totals": {
"IP": 30.0,
"ER": 8.0,
"R": 9.0,
"H": 23.0,
"BB": 22.0,
"SO": 34.0,
"HR": 2.0,
"BF": 137.0,
"Pitches": 567.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2424,
"R": 0.2727,
"H": 0.697,
"BB": 0.6667,
"SO": 1.0303,
"HR": 0.0606,
"BF": 4.1515,
"Pitches": 17.1818
},
"rates": {
"ERA": 2.4,
"WHIP": 1.5,
"ER_per_IP": 0.26667,
"H_per_IP": 0.76667,
"BB_per_IP": 0.73333,
"SO_per_IP": 1.13333,
"HR_per_IP": 0.06667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.293,
"predicted_H": 0.731,
"predicted_BB": 0.404,
"predicted_SO": 1.096,
"predicted_HR": 0.071,
"predicted_ERA": 2.637,
"predicted_WHIP": 1.1355
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5434,
"form_weight": 0.4566,
"form_reliability": 0.5423,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.293,
"final": 0.1338,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.731,
"final": 0.3338,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.404,
"final": 0.1845,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.096,
"final": 1.0438,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.071,
"final": 0.0324,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.637,
"final": 2.637,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1355,
"final": 1.1355,
"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.0599 |
| ESPN Rank | 268 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2050 |
| Avg Velo | 86.0494 |
| Avg Spin | 1631.6825 |
| 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 | 4.9390 |
| Season WHIP | 1.3171 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"opponent": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"edges": {
"quality_edge": -0.4741,
"offense_edge": -0.0315,
"opponent_offense_edge": 0.1401,
"defense_strength": -0.0905,
"opponent_defense_weakness": -0.2453,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9727,
"run_prevention": 1.0552,
"strikeout": 0.9746
},
"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": 25.0,
"bb_percent": 6.9,
"woba": 0.304,
"xwoba": 0.319,
"sweet_spot_percent": 41.0,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 30.8,
"avg_best_speed": 76.2225,
"avg_hyper_speed": 92.7872,
"whiff_percent": 28.6,
"swing_percent": 47.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1647,
"command_and_miss": 0.385,
"regression_edge": -0.4286,
"xwoba_edge": -0.1286,
"barrel_edge": 0.7333,
"hard_hit_edge": 1.1143,
"whiff_edge": 0.4,
"bb_edge": 0.55,
"pitch_design_score": -0.205
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "643410",
"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": 86.04937839039859,
"release_spin_rate": 1631.6825158493414,
"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": 86.04937839039859,
"release_spin_rate": 1631.6825158493414,
"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.0494,
"release_spin_rate": 1631.6825,
"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.205,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4643,
"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.0599,
"sample_weight": 0.45,
"run_prevention_factor": 0.9949,
"strikeout_factor": 1.0126,
"walk_factor": 0.9802,
"homer_factor": 0.9553,
"woba_minus_xwoba": -0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643410",
"espn_id": 36202,
"player_name": "Mark Leiter Jr.",
"team": "ATH",
"role": "pitcher",
"espn_rank": 268,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 268,
"gp_value": 29.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.939,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 4.0,
"sv_rank": 27,
"hld_value": 3.0,
"hld_rank": 129,
"ip_value": 27.1,
"ip_rank": 241,
"h_value": 28.0,
"h_rank": 193,
"er_value": 15.0,
"er_rank": 181,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 8.0,
"bb_rank": 324,
"k_value": 29.0,
"k_rank": 218,
"k_per_9_value": 9.54878,
"k_per_9_rank": 24,
"whip_value": 1.317,
"whip_rank": null,
"war_value": 0.19,
"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.9911,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9799,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0057,
"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": 2,
"SO": 11,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.5625,
"K9": 9.28125,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "643410",
"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": 86.04937839039859,
"release_spin_rate": 1631.6825158493414,
"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": 86.04937839039859,
"release_spin_rate": 1631.6825158493414,
"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.0494,
"release_spin_rate": 1631.6825,
"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.205,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4643,
"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.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"role": "pitcher",
"player_id": "643410",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 1.0,
"SO": 5.0,
"HR": 0.0,
"BF": 15.0,
"Pitches": 63.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.2,
"BB": 0.2,
"SO": 1.0,
"HR": 0.0,
"BF": 3.0,
"Pitches": 12.6
},
"rates": {
"ERA": 0.0,
"WHIP": 0.4286,
"ER_per_IP": 0.0,
"H_per_IP": 0.21429,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 2.0,
"SO": 11.0,
"HR": 0.0,
"BF": 36.0,
"Pitches": 138.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.2,
"SO": 1.1,
"HR": 0.0,
"BF": 3.6,
"Pitches": 13.8
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5625,
"ER_per_IP": 0.0,
"H_per_IP": 0.375,
"BB_per_IP": 0.1875,
"SO_per_IP": 1.03125,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 27.1,
"ER": 15.0,
"R": 15.0,
"H": 28.0,
"BB": 8.0,
"SO": 29.0,
"HR": 2.0,
"BF": 116.0,
"Pitches": 436.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5172,
"R": 0.5172,
"H": 0.9655,
"BB": 0.2759,
"SO": 1.0,
"HR": 0.069,
"BF": 4.0,
"Pitches": 15.0345
},
"rates": {
"ERA": 4.939,
"WHIP": 1.3171,
"ER_per_IP": 0.54878,
"H_per_IP": 1.02439,
"BB_per_IP": 0.29268,
"SO_per_IP": 1.06098,
"HR_per_IP": 0.07317
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.29,
"predicted_H": 0.685,
"predicted_BB": 0.29,
"predicted_SO": 0.997,
"predicted_HR": 0.075,
"predicted_ERA": 2.6111,
"predicted_WHIP": 0.9748
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5532,
"form_weight": 0.4468,
"form_reliability": 0.5191,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.29,
"final": 0.1296,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.685,
"final": 0.3061,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.29,
"final": 0.1296,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.997,
"final": 0.4455,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.075,
"final": 0.0335,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.6111,
"final": 2.6111,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9748,
"final": 0.9748,
"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 | Scott Barlow |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0127 |
| ESPN Rank | 152 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 81.0188 |
| Avg Spin | 2378.3369 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.2500 |
| Season WHIP | 0.9286 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"opponent": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"edges": {
"quality_edge": -0.4741,
"offense_edge": -0.0315,
"opponent_offense_edge": 0.1401,
"defense_strength": -0.0905,
"opponent_defense_weakness": -0.2453,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9727,
"run_prevention": 1.0552,
"strikeout": 0.9746
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "605130",
"profile": {
"available": true,
"pitcher_id": "605130",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 97.0,
"k_percent": 19.2,
"bb_percent": 13.3,
"woba": 0.288,
"xwoba": 0.315,
"sweet_spot_percent": 28.9,
"barrel_batted_rate": 7.9,
"hard_hit_percent": 31.6,
"avg_best_speed": 77.4893,
"avg_hyper_speed": 92.9405,
"whiff_percent": 34.6,
"swing_percent": 42.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.2316,
"command_and_miss": -0.0079,
"regression_edge": -0.7714,
"xwoba_edge": -0.0143,
"barrel_edge": -0.1778,
"hard_hit_edge": 1.0,
"whiff_edge": 1.2571,
"bb_edge": -1.05,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "605130",
"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": 81.01881240795811,
"release_spin_rate": 2378.336918240106,
"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": 81.01881240795811,
"release_spin_rate": 2378.336918240106,
"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": 81.0188,
"release_spin_rate": 2378.3369,
"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.0127,
"sample_weight": 0.45,
"run_prevention_factor": 0.9989,
"strikeout_factor": 1.0131,
"walk_factor": 1.0378,
"homer_factor": 0.9886,
"woba_minus_xwoba": -0.027,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "605130",
"espn_id": 32156,
"player_name": "Scott Barlow",
"team": "ATH",
"role": "pitcher",
"espn_rank": 152,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 152,
"gp_value": 29.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.5357,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 2.0,
"sv_rank": 51,
"hld_value": 9.0,
"hld_rank": 22,
"ip_value": 28.0,
"ip_rank": 230,
"h_value": 15.0,
"h_rank": 376,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 23.0,
"k_rank": 286,
"k_per_9_value": 7.392857,
"k_per_9_rank": 33,
"whip_value": 1.0714,
"whip_rank": null,
"war_value": 0.62,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9995,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9995,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.017,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9949,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0059,
"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": 4,
"H": 7,
"BB": 6,
"SO": 5,
"HR": 2,
"ERA": 4.153846153846154,
"WHIP": 1.5,
"K9": 5.1923076923076925,
"HR9": 2.076923076923077,
"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-04T00:00:00"
}{
"available": true,
"pitcher_id": "605130",
"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": 81.01881240795811,
"release_spin_rate": 2378.336918240106,
"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": 81.01881240795811,
"release_spin_rate": 2378.336918240106,
"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": 81.0188,
"release_spin_rate": 2378.3369,
"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": 5.529,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5251,
"prior_weight": 0.4749
},
"role": "pitcher",
"player_id": "605130",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.2,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 5.0,
"SO": 2.0,
"HR": 2.0,
"BF": 20.0,
"Pitches": 89.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 0.8,
"BB": 1.0,
"SO": 0.4,
"HR": 0.4,
"BF": 4.0,
"Pitches": 17.8
},
"rates": {
"ERA": 7.3636,
"WHIP": 2.4545,
"ER_per_IP": 0.81818,
"H_per_IP": 1.09091,
"BB_per_IP": 1.36364,
"SO_per_IP": 0.54545,
"HR_per_IP": 0.54545
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 6.0,
"SO": 5.0,
"HR": 2.0,
"BF": 41.0,
"Pitches": 158.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.7,
"BB": 0.6,
"SO": 0.5,
"HR": 0.2,
"BF": 4.1,
"Pitches": 15.8
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.5,
"ER_per_IP": 0.46154,
"H_per_IP": 0.80769,
"BB_per_IP": 0.69231,
"SO_per_IP": 0.57692,
"HR_per_IP": 0.23077
}
},
"season": {
"games": 28,
"totals": {
"IP": 28.0,
"ER": 7.0,
"R": 8.0,
"H": 13.0,
"BB": 13.0,
"SO": 23.0,
"HR": 3.0,
"BF": 115.0,
"Pitches": 439.0
},
"per_game": {
"IP": 1.0,
"ER": 0.25,
"R": 0.2857,
"H": 0.4643,
"BB": 0.4643,
"SO": 0.8214,
"HR": 0.1071,
"BF": 4.1071,
"Pitches": 15.6786
},
"rates": {
"ERA": 2.25,
"WHIP": 0.9286,
"ER_per_IP": 0.25,
"H_per_IP": 0.46429,
"BB_per_IP": 0.46429,
"SO_per_IP": 0.82143,
"HR_per_IP": 0.10714
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.493,
"predicted_H": 0.838,
"predicted_BB": 0.618,
"predicted_SO": 0.705,
"predicted_HR": 0.229,
"predicted_ERA": 4.8119,
"predicted_WHIP": 1.581
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5506,
"form_weight": 0.4494,
"form_reliability": 0.5251,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.529,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5251,
"prior_weight": 0.4749
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.493,
"final": 0.2215,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.838,
"final": 0.9272,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.618,
"final": 0.2777,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.705,
"final": 0.8674,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.229,
"final": 0.1029,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.8119,
"final": 4.8119,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.581,
"final": 1.581,
"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 Sterner |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2969 |
| ESPN Rank | 117 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0937 |
| Avg Velo | 88.0368 |
| Avg Spin | 2536.8330 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 3.2283 |
| Season WHIP | 1.0109 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 70,
"wins": 33,
"losses": 37,
"win_pct": 0.4714,
"runs_scored": 303.0,
"runs_allowed": 344.0,
"run_differential": -41.0,
"run_differential_per_game": -0.5857,
"avg_runs_scored": 4.3286,
"avg_runs_allowed": 4.9143,
"offense_index": 0.9685,
"defense_index": 0.9095,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.8,
"avg_runs_allowed": 6.4,
"run_differential": -26.0
},
"available": true,
"quality_score": -0.1314
},
"opponent": {
"team": "MIL",
"games": 73,
"wins": 44,
"losses": 29,
"win_pct": 0.6027,
"runs_scored": 372.0,
"runs_allowed": 262.0,
"run_differential": 110.0,
"run_differential_per_game": 1.5068,
"avg_runs_scored": 5.0959,
"avg_runs_allowed": 3.589,
"offense_index": 1.1401,
"defense_index": 1.2453,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.0,
"avg_runs_allowed": 4.3,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3427
},
"edges": {
"quality_edge": -0.4741,
"offense_edge": -0.0315,
"opponent_offense_edge": 0.1401,
"defense_strength": -0.0905,
"opponent_defense_weakness": -0.2453,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9727,
"run_prevention": 1.0552,
"strikeout": 0.9746
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "686993",
"profile": {
"available": true,
"pitcher_id": "686993",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 106.0,
"k_percent": 23.0,
"bb_percent": 5.7,
"woba": 0.263,
"xwoba": 0.247,
"sweet_spot_percent": 27.6,
"barrel_batted_rate": 5.7,
"hard_hit_percent": 44.8,
"avg_best_speed": 79.4819,
"avg_hyper_speed": 94.6398,
"whiff_percent": 29.5,
"swing_percent": 53.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.9423,
"command_and_miss": 0.3614,
"regression_edge": 0.4571,
"xwoba_edge": 1.9286,
"barrel_edge": 0.3111,
"hard_hit_edge": -0.8857,
"whiff_edge": 0.5286,
"bb_edge": 0.85,
"pitch_design_score": -0.0937
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "686993",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 7,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 7,
"pitch_usage": 0.0,
"release_speed": 88.03677669729333,
"release_spin_rate": 2536.832999394811,
"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": 7,
"pitch_usage": 0.0,
"release_speed": 88.03677669729333,
"release_spin_rate": 2536.832999394811,
"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.0368,
"release_spin_rate": 2536.833,
"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.0937,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.6694,
"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.2969,
"sample_weight": 0.45,
"run_prevention_factor": 0.9748,
"strikeout_factor": 1.0098,
"walk_factor": 0.9694,
"homer_factor": 0.9787,
"woba_minus_xwoba": 0.016,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686993",
"espn_id": 4307467,
"player_name": "Justin Sterner",
"team": "ATH",
"role": "pitcher",
"espn_rank": 117,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 117,
"gp_value": 31.0,
"gp_rank": 7,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.2282,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 10.0,
"hld_rank": 16,
"ip_value": 30.2,
"ip_rank": 190,
"h_value": 24.0,
"h_rank": 245,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 7.0,
"bb_rank": 358,
"k_value": 28.0,
"k_rank": 235,
"k_per_9_value": 8.217391,
"k_per_9_rank": 33,
"whip_value": 1.0108,
"whip_rank": null,
"war_value": 0.83,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9887,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9887,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9862,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9904,
"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.1,
"ER": 1,
"H": 1,
"BB": 0,
"SO": 5,
"HR": 1,
"ERA": 0.9642857142857142,
"WHIP": 0.10714285714285714,
"K9": 4.821428571428571,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "686993",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 7,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 7,
"pitch_usage": 0.0,
"release_speed": 88.03677669729333,
"release_spin_rate": 2536.832999394811,
"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": 7,
"pitch_usage": 0.0,
"release_speed": 88.03677669729333,
"release_spin_rate": 2536.832999394811,
"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.0368,
"release_spin_rate": 2536.833,
"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.0937,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.6694,
"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.056,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5477,
"prior_weight": 0.4523
},
"role": "pitcher",
"player_id": "686993",
"report_date": "20260608_M",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 2.0,
"HR": 0.0,
"BF": 14.0,
"Pitches": 66.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.4,
"HR": 0.0,
"BF": 2.8,
"Pitches": 13.2
},
"rates": {
"ERA": 0.0,
"WHIP": 0.0,
"ER_per_IP": 0.0,
"H_per_IP": 0.0,
"BB_per_IP": 0.0,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 1.0,
"R": 1.0,
"H": 1.0,
"BB": 0.0,
"SO": 5.0,
"HR": 1.0,
"BF": 29.0,
"Pitches": 131.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.1,
"BB": 0.0,
"SO": 0.5,
"HR": 0.1,
"BF": 2.9,
"Pitches": 13.1
},
"rates": {
"ERA": 0.9643,
"WHIP": 0.1071,
"ER_per_IP": 0.10714,
"H_per_IP": 0.10714,
"BB_per_IP": 0.0,
"SO_per_IP": 0.53571,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 31,
"totals": {
"IP": 30.2,
"ER": 11.0,
"R": 13.0,
"H": 24.0,
"BB": 7.0,
"SO": 28.0,
"HR": 4.0,
"BF": 122.0,
"Pitches": 487.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3548,
"R": 0.4194,
"H": 0.7742,
"BB": 0.2258,
"SO": 0.9032,
"HR": 0.129,
"BF": 3.9355,
"Pitches": 15.7097
},
"rates": {
"ERA": 3.2283,
"WHIP": 1.0109,
"ER_per_IP": 0.3587,
"H_per_IP": 0.78261,
"BB_per_IP": 0.22826,
"SO_per_IP": 0.91304,
"HR_per_IP": 0.13043
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.237,
"predicted_H": 0.458,
"predicted_BB": 0.161,
"predicted_SO": 0.621,
"predicted_HR": 0.083,
"predicted_ERA": 2.512,
"predicted_WHIP": 0.7292
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5411,
"form_weight": 0.4589,
"form_reliability": 0.5477,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.056,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5477,
"prior_weight": 0.4523
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 1.0,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.237,
"final": 0.1088,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.458,
"final": 0.2102,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.161,
"final": 0.0739,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.621,
"final": 0.285,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.083,
"final": 0.0381,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.512,
"final": 2.512,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.7292,
"final": 0.7292,
"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.065 | 0.000 | 0.000 | Hitting_2B | 0.065 | 1.000 | -0.065 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.000 | 4.000 | 6.000 | Hitting_AB | 3.815 | 3.000 | 0.185 | 1.000 |
| predicted_AVG | 0.230 | 0.000 | 0.167 | Hitting_AVG | 0.204 | 0.667 | -0.204 | -0.667 |
| predicted_BB | 0.470 | 0.000 | 1.000 | Hitting_BB | 0.470 | 1.000 | -0.470 | -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.780 | 2.000 | -0.780 | -2.000 |
| predicted_HR | 0.230 | 0.000 | 0.000 | Hitting_HR | 0.232 | 1.000 | -0.232 | -1.000 |
| predicted_OBP | 0.307 | 0.000 | 0.286 | Hitting_OBP | 0.293 | 0.750 | -0.293 | -0.750 |
| predicted_R | 0.399 | 0.000 | 1.000 | Hitting_R | 0.399 | 1.000 | -0.399 | -1.000 |
| predicted_RBI | 0.560 | 0.000 | 1.000 | Hitting_RBI | 0.780 | 2.000 | -0.780 | -2.000 |
| predicted_SLG | 0.454 | 0.000 | 0.167 | Hitting_SLG | 0.404 | 2.000 | -0.404 | -2.000 |
| predicted_SO | 1.345 | 1.000 | 2.000 | Hitting_SO | 1.345 | 0.000 | -0.345 | 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_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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 4.0000 -> 6.3253 (boost 2.3253, 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 | 6 | 0 | 6 | 0 | 6 | - | predicted_RBI: 1.0525 -> 0.9605 (deboost -0.0920, 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_BB: 0.6497 -> 1.0000 (boost 0.3503, better) | predicted_HR: 0.4197 -> 0.0000 (deboost -0.4197, worse) | AB rounded to 6 (raw=6.33), rates preserved: AVG=0.223 HR/AB=0.066 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7247 -> 1.0000 (boost 0.2753, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4501 -> 0.1670 (deboost -0.2831, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.4501 (boost 0.2831, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "667670",
"player_name": "Brent Rooker",
"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.065,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.23,
"predicted_BB": 0.47,
"predicted_H": 0.92,
"predicted_HR": 0.23,
"predicted_OBP": 0.307,
"predicted_R": 0.399,
"predicted_RBI": 0.56,
"predicted_SLG": 0.454,
"predicted_SO": 1.345
},
"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.1786,
"predicted_3B": 0.0004,
"predicted_AB": 6.3253,
"predicted_AVG": 0.2331,
"predicted_BB": 0.6599,
"predicted_H": 1.4836,
"predicted_HBP": 0.105,
"predicted_HR": 0.4427,
"predicted_OBP": 0.3082,
"predicted_R": 0.7941,
"predicted_RBI": 1.0525,
"predicted_SLG": 0.4754,
"predicted_SO": 2.1107
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.065,
"after": 0.1786,
"delta": 0.1136,
"percent_delta": 1.7477,
"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.0,
"after": 6.3253,
"delta": 2.3253,
"percent_delta": 0.5813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2331,
"delta": 0.0031,
"percent_delta": 0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.47,
"after": 0.6599,
"delta": 0.1899,
"percent_delta": 0.404,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 1.4836,
"delta": 0.5636,
"percent_delta": 0.6126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.4427,
"delta": 0.2127,
"percent_delta": 0.9248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.3082,
"delta": 0.0012,
"percent_delta": 0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.399,
"after": 0.7941,
"delta": 0.3951,
"percent_delta": 0.9902,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 1.0525,
"delta": 0.4925,
"percent_delta": 0.8795,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4754,
"delta": 0.0214,
"percent_delta": 0.0471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.345,
"after": 2.1107,
"delta": 0.7657,
"percent_delta": 0.5693,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 6.3253,
"delta": 2.3253,
"percent_delta": 0.5813,
"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.1786,
"predicted_3B": 0.0004,
"predicted_AB": 6.3253,
"predicted_AVG": 0.2227,
"predicted_BB": 0.6497,
"predicted_H": 1.4084,
"predicted_HBP": 0.105,
"predicted_HR": 0.4197,
"predicted_OBP": 0.2951,
"predicted_R": 0.7247,
"predicted_RBI": 0.9605,
"predicted_SLG": 0.4501,
"predicted_SO": 2.1434
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1786,
"after": 0.1786,
"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": 6.3253,
"after": 6.3253,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2331,
"after": 0.2227,
"delta": -0.0104,
"percent_delta": -0.0446,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6599,
"after": 0.6497,
"delta": -0.0102,
"percent_delta": -0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4836,
"after": 1.4084,
"delta": -0.0752,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.105,
"after": 0.105,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4427,
"after": 0.4197,
"delta": -0.023,
"percent_delta": -0.052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3082,
"after": 0.2951,
"delta": -0.0131,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7941,
"after": 0.7247,
"delta": -0.0694,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0525,
"after": 0.9605,
"delta": -0.092,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4754,
"after": 0.4501,
"delta": -0.0253,
"percent_delta": -0.0532,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1107,
"after": 2.1434,
"delta": 0.0327,
"percent_delta": 0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0525,
"after": 0.9605,
"delta": -0.092,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.33), rates preserved: AVG=0.223 HR/AB=0.066",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1786,
"after": 0.0,
"delta": -0.1786,
"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": 6.3253,
"after": 6.0,
"delta": -0.3253,
"percent_delta": -0.0514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6497,
"after": 1.0,
"delta": 0.3503,
"percent_delta": 0.5392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4084,
"after": 1.0,
"delta": -0.4084,
"percent_delta": -0.29,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.105,
"after": 0.0,
"delta": -0.105,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4197,
"after": 0.0,
"delta": -0.4197,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9605,
"after": 1.0,
"delta": 0.0395,
"percent_delta": 0.0411,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.1434,
"after": 2.0,
"delta": -0.1434,
"percent_delta": -0.0669,
"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_BB",
"before": 0.6497,
"after": 1.0,
"delta": 0.3503,
"percent_delta": 0.5392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4197,
"after": 0.0,
"delta": -0.4197,
"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": 6.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": 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": 6.0,
"after": 6.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.7247,
"after": 1.0,
"delta": 0.2753,
"percent_delta": 0.3799,
"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": 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_R",
"before": 0.7247,
"after": 1.0,
"delta": 0.2753,
"percent_delta": 0.3799,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2227,
"after": 0.167,
"delta": -0.0557,
"percent_delta": -0.2501,
"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.2951,
"after": 0.286,
"delta": -0.0091,
"percent_delta": -0.0308,
"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.4501,
"after": 0.167,
"delta": -0.2831,
"percent_delta": -0.629,
"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_SLG",
"before": 0.4501,
"after": 0.167,
"delta": -0.2831,
"percent_delta": -0.629,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2227,
"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.2951,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4501,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.167,
"after": 0.2227,
"delta": 0.0557,
"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": 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.286,
"after": 0.2951,
"delta": 0.0091,
"percent_delta": 0.0317,
"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.167,
"after": 0.4501,
"delta": 0.2831,
"percent_delta": 1.695,
"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.167,
"after": 0.4501,
"delta": 0.2831,
"percent_delta": 1.695,
"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.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": 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.23,
"after": 0.2227,
"delta": -0.0073,
"percent_delta": -0.0317,
"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": 0.92,
"after": 0.0,
"delta": -0.92,
"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.307,
"after": 0.2951,
"delta": -0.0119,
"percent_delta": -0.0388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.399,
"after": 0.0,
"delta": -0.399,
"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.454,
"after": 0.4501,
"delta": -0.0039,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.345,
"after": 1.0,
"delta": -0.345,
"percent_delta": -0.2565,
"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_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.065 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.000 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.470 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.230 | - |
| predicted_OBP | 0.307 | - |
| predicted_R | 0.399 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.454 | - |
| predicted_SO | 1.345 | - |
Final model 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.114 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.325 | 2.325 |
| predicted_AVG | 0.233 | 0.003 |
| predicted_BB | 0.660 | 0.190 |
| predicted_H | 1.484 | 0.564 |
| predicted_HBP | 0.105 | - |
| predicted_HR | 0.443 | 0.213 |
| predicted_OBP | 0.308 | 0.001 |
| predicted_R | 0.794 | 0.395 |
| predicted_RBI | 1.052 | 0.492 |
| predicted_SLG | 0.475 | 0.021 |
| predicted_SO | 2.111 | 0.766 |
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 | 6.325 | 0.000 |
| predicted_AVG | 0.223 | -0.010 |
| predicted_BB | 0.650 | -0.010 |
| predicted_H | 1.408 | -0.075 |
| predicted_HBP | 0.105 | 0.000 |
| predicted_HR | 0.420 | -0.023 |
| predicted_OBP | 0.295 | -0.013 |
| predicted_R | 0.725 | -0.069 |
| predicted_RBI | 0.961 | -0.092 |
| predicted_SLG | 0.450 | -0.025 |
| predicted_SO | 2.143 | 0.033 |
AB rounded to 6 (raw=6.33), rates preserved: AVG=0.223 HR/AB=0.066
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 6.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 | 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.179 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.325 |
| predicted_AVG | 0.167 | -0.056 |
| predicted_BB | 1.000 | 0.350 |
| predicted_H | 1.000 | -0.408 |
| predicted_HR | 0.000 | -0.420 |
| predicted_OBP | 0.286 | -0.009 |
| predicted_R | 1.000 | 0.275 |
| predicted_RBI | 1.000 | 0.039 |
| predicted_SLG | 0.167 | -0.283 |
| predicted_SO | 2.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 | 4.000 | -2.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 | -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 | 2.000 | 3.000 | 3.000 | 1.000 | 5.000 | 0.3125 | 0.3529 | 0.7500 | 0.3125 | 0.1250 | 0.1875 | 0.0625 | 0.3125 |
| last_10 | 0.20 | 10 | - | 35.000 | 9.000 | 2.000 | 0.000 | 3.000 | 4.000 | 7.000 | 2.000 | 11.000 | 0.2571 | 0.3158 | 0.5714 | 0.2571 | 0.0857 | 0.1143 | 0.0571 | 0.3143 |
| season | 0.60 | 47 | - | 641.000 | 131.000 | 11.000 | 0.000 | 39.000 | 131.000 | 67.000 | 79.000 | 226.000 | 0.2044 | 0.2931 | 0.4041 | 0.2044 | 0.0608 | 0.2044 | 0.1232 | 0.3526 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3240 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.3020 |
| predicted_AVG | 0.2371 |
| predicted_BB | 0.9030 |
| predicted_H | 2.2050 |
| predicted_HBP | 0.1050 |
| predicted_HR | 0.7150 |
| predicted_OBP | 0.3097 |
| predicted_R | 1.3000 |
| predicted_RBI | 1.6830 |
| predicted_SLG | 0.5029 |
| predicted_SO | 3.0910 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0650 | 0.3240 | 0.1786 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0000 | 9.3020 | 6.3253 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2371 | 0.2331 | model_form_blend |
| predicted_BB | 0.4700 | 0.9030 | 0.6599 | model_form_blend |
| predicted_H | 0.9200 | 2.2050 | 1.4836 | model_form_blend |
| predicted_HBP | - | 0.1050 | 0.1050 | form_only |
| predicted_HR | 0.2300 | 0.7150 | 0.4427 | model_form_blend |
| predicted_OBP | 0.3070 | 0.3097 | 0.3082 | model_form_blend |
| predicted_R | 0.3990 | 1.3000 | 0.7941 | model_form_blend |
| predicted_RBI | 0.5600 | 1.6830 | 1.0525 | model_form_blend |
| predicted_SLG | 0.4540 | 0.5029 | 0.4754 | model_form_blend |
| predicted_SO | 1.3450 | 3.0910 | 2.1107 | 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 | 168 |
| Season rows before report date | 168 |
| Report year | 2026 |
| Profile rows used | 168 |
| 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.204 |
| 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.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 | 0 |
| Hitting_TB | 6 |
| 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 | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 667670 |
| playerID | 667670 |
| playerName | Brent Rooker |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 31.5 |
| sl_bb_percent | 9.1 |
| sl_woba | 0.301 |
| sl_xwoba | 0.32 |
| sl_xba | 0.212 |
| sl_xslg | 0.447 |
| sl_sweet_spot_percent | 33.9 |
| sl_barrel_batted_rate | 15.8 |
| sl_hard_hit_percent | 42.6 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 19.4 |
| sl_whiff_percent | 38.1 |
| 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.159 | 0.000 | 0.000 | Hitting_2B | 0.146 | 0.000 | -0.146 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.705 | 4.000 | 3.000 | Hitting_AB | 2.479 | 0.000 | 1.521 | 4.000 |
| predicted_AVG | 0.271 | 0.750 | 0.333 | Hitting_AVG | 0.303 | - | 0.447 | - |
| predicted_BB | 0.182 | 0.000 | 0.000 | Hitting_BB | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_H | 0.570 | 3.000 | 1.000 | Hitting_H | 0.750 | 0.000 | 2.250 | 3.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.062 | 0.000 | -0.062 | 0.000 |
| predicted_OBP | 0.284 | 0.750 | 0.333 | Hitting_OBP | 0.346 | - | 0.404 | - |
| predicted_R | 0.295 | 1.000 | 0.000 | Hitting_R | 0.271 | 0.000 | 0.729 | 1.000 |
| predicted_RBI | 0.330 | 0.000 | 0.000 | Hitting_RBI | 0.312 | 0.000 | -0.312 | 0.000 |
| predicted_SLG | 0.403 | 0.750 | 0.333 | Hitting_SLG | 0.437 | - | 0.313 | - |
| predicted_SO | 0.795 | 0.000 | 1.000 | Hitting_SO | 0.729 | 0.000 | -0.729 | 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.5700 -> 3.0000 (boost 2.4300, better) |
| Biggest Deboost | predicted_SO: 0.7950 -> 0.0000 (deboost -0.7950, 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 | 6 | 1 | 5 | 2 | predicted_AB: 2.7050 -> 3.2969 (boost 0.5919, better) | predicted_AVG: 0.2710 -> 0.2560 (deboost -0.0150, 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.2560 -> 0.2107 (deboost -0.0453, 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.6945 -> 1.0000 (boost 0.3055, better) | predicted_RBI: 0.3756 -> 0.0000 (deboost -0.3756, worse) | AB rounded to 3 (raw=3.30), rates preserved: AVG=0.211 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3710 -> 0.0000 (deboost -0.3710, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2107 -> 0.3330 (boost 0.1223, better) | predicted_SLG: 0.3850 -> 0.3330 (deboost -0.0520, 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_H: 1.0000 -> 3.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.3850 (boost 0.0520, better) | predicted_AVG: 0.3330 -> 0.2107 (deboost -0.1223, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687515",
"player_name": "Colby Thomas",
"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.159,
"predicted_3B": 0.0,
"predicted_AB": 2.705,
"predicted_AVG": 0.271,
"predicted_BB": 0.182,
"predicted_H": 0.57,
"predicted_HR": 0.11,
"predicted_OBP": 0.284,
"predicted_R": 0.295,
"predicted_RBI": 0.33,
"predicted_SLG": 0.403,
"predicted_SO": 0.795
},
"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.1724,
"predicted_3B": 0.0012,
"predicted_AB": 3.2969,
"predicted_AVG": 0.256,
"predicted_BB": 0.2332,
"predicted_H": 0.7316,
"predicted_HBP": 0.007,
"predicted_HR": 0.1407,
"predicted_OBP": 0.2856,
"predicted_R": 0.4065,
"predicted_RBI": 0.4116,
"predicted_SLG": 0.4075,
"predicted_SO": 1.0003
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.159,
"after": 0.1724,
"delta": 0.0134,
"percent_delta": 0.0843,
"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.705,
"after": 3.2969,
"delta": 0.5919,
"percent_delta": 0.2188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.256,
"delta": -0.015,
"percent_delta": -0.0554,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.182,
"after": 0.2332,
"delta": 0.0512,
"percent_delta": 0.2813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.57,
"after": 0.7316,
"delta": 0.1616,
"percent_delta": 0.2835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1407,
"delta": 0.0307,
"percent_delta": 0.2791,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2856,
"delta": 0.0016,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.295,
"after": 0.4065,
"delta": 0.1115,
"percent_delta": 0.378,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.4116,
"delta": 0.0816,
"percent_delta": 0.2473,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4075,
"delta": 0.0045,
"percent_delta": 0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.795,
"after": 1.0003,
"delta": 0.2053,
"percent_delta": 0.2582,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.705,
"after": 3.2969,
"delta": 0.5919,
"percent_delta": 0.2188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.256,
"delta": -0.015,
"percent_delta": -0.0554,
"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": 9,
"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.1724,
"predicted_3B": 0.0012,
"predicted_AB": 3.2969,
"predicted_AVG": 0.2107,
"predicted_BB": 0.2296,
"predicted_H": 0.6945,
"predicted_HBP": 0.007,
"predicted_HR": 0.1334,
"predicted_OBP": 0.262,
"predicted_R": 0.371,
"predicted_RBI": 0.3756,
"predicted_SLG": 0.385,
"predicted_SO": 1.0158
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1724,
"after": 0.1724,
"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.2969,
"after": 3.2969,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.2107,
"delta": -0.0453,
"percent_delta": -0.177,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2332,
"after": 0.2296,
"delta": -0.0036,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7316,
"after": 0.6945,
"delta": -0.0371,
"percent_delta": -0.0507,
"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.1407,
"after": 0.1334,
"delta": -0.0073,
"percent_delta": -0.0519,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2856,
"after": 0.262,
"delta": -0.0236,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4065,
"after": 0.371,
"delta": -0.0355,
"percent_delta": -0.0873,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4116,
"after": 0.3756,
"delta": -0.036,
"percent_delta": -0.0875,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4075,
"after": 0.385,
"delta": -0.0225,
"percent_delta": -0.0552,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0003,
"after": 1.0158,
"delta": 0.0155,
"percent_delta": 0.0155,
"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.256,
"after": 0.2107,
"delta": -0.0453,
"percent_delta": -0.177,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.30), rates preserved: AVG=0.211 HR/AB=0.040",
"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.1724,
"after": 0.0,
"delta": -0.1724,
"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.2969,
"after": 3.0,
"delta": -0.2969,
"percent_delta": -0.0901,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2296,
"after": 0.0,
"delta": -0.2296,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6945,
"after": 1.0,
"delta": 0.3055,
"percent_delta": 0.4399,
"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.1334,
"after": 0.0,
"delta": -0.1334,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3756,
"after": 0.0,
"delta": -0.3756,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0158,
"after": 1.0,
"delta": -0.0158,
"percent_delta": -0.0156,
"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.6945,
"after": 1.0,
"delta": 0.3055,
"percent_delta": 0.4399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3756,
"after": 0.0,
"delta": -0.3756,
"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.371,
"after": 0.0,
"delta": -0.371,
"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.371,
"after": 0.0,
"delta": -0.371,
"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.2107,
"after": 0.333,
"delta": 0.1223,
"percent_delta": 0.5804,
"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.262,
"after": 0.333,
"delta": 0.071,
"percent_delta": 0.271,
"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.385,
"after": 0.333,
"delta": -0.052,
"percent_delta": -0.1351,
"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.2107,
"after": 0.333,
"delta": 0.1223,
"percent_delta": 0.5804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.385,
"after": 0.333,
"delta": -0.052,
"percent_delta": -0.1351,
"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": 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": 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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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_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": 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.2107,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.262,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.385,
"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.2107,
"delta": -0.1223,
"percent_delta": -0.3674,
"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.262,
"delta": -0.071,
"percent_delta": -0.2131,
"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.385,
"delta": 0.052,
"percent_delta": 0.1563,
"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.385,
"delta": 0.052,
"percent_delta": 0.1563,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2107,
"delta": -0.1223,
"percent_delta": -0.3674,
"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.159,
"after": 0.0,
"delta": -0.159,
"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.705,
"after": 4.0,
"delta": 1.295,
"percent_delta": 0.4787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2107,
"delta": -0.0603,
"percent_delta": -0.2225,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.182,
"after": 0.0,
"delta": -0.182,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.57,
"after": 3.0,
"delta": 2.43,
"percent_delta": 4.2632,
"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.284,
"after": 0.262,
"delta": -0.022,
"percent_delta": -0.0775,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.295,
"after": 1.0,
"delta": 0.705,
"percent_delta": 2.3898,
"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.403,
"after": 0.385,
"delta": -0.018,
"percent_delta": -0.0447,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.795,
"after": 0.0,
"delta": -0.795,
"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.57,
"after": 3.0,
"delta": 2.43,
"percent_delta": 4.2632,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.795,
"after": 0.0,
"delta": -0.795,
"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.159 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.705 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.182 | - |
| predicted_H | 0.570 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.284 | - |
| predicted_R | 0.295 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.403 | - |
| predicted_SO | 0.795 | - |
Final model 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.013 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.297 | 0.592 |
| predicted_AVG | 0.256 | -0.015 |
| predicted_BB | 0.233 | 0.051 |
| predicted_H | 0.732 | 0.162 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.141 | 0.031 |
| predicted_OBP | 0.286 | 0.002 |
| predicted_R | 0.406 | 0.111 |
| predicted_RBI | 0.412 | 0.082 |
| predicted_SLG | 0.407 | 0.004 |
| predicted_SO | 1.000 | 0.205 |
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.001 | 0.000 |
| predicted_AB | 3.297 | 0.000 |
| predicted_AVG | 0.211 | -0.045 |
| predicted_BB | 0.230 | -0.004 |
| predicted_H | 0.695 | -0.037 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.133 | -0.007 |
| predicted_OBP | 0.262 | -0.024 |
| predicted_R | 0.371 | -0.035 |
| predicted_RBI | 0.376 | -0.036 |
| predicted_SLG | 0.385 | -0.022 |
| predicted_SO | 1.016 | 0.016 |
AB rounded to 3 (raw=3.30), rates preserved: AVG=0.211 HR/AB=0.040
| 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.172 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.297 |
| predicted_AVG | 0.333 | 0.122 |
| predicted_BB | 0.000 | -0.230 |
| predicted_H | 1.000 | 0.305 |
| predicted_HR | 0.000 | -0.133 |
| predicted_OBP | 0.333 | 0.071 |
| predicted_R | 0.000 | -0.371 |
| predicted_RBI | 0.000 | -0.376 |
| predicted_SLG | 0.333 | -0.052 |
| 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 | 1.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 | 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 | - | 9.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 1.000 | 4.000 | 0.1111 | 0.2000 | 0.4444 | 0.1111 | 0.1111 | 0.1111 | 0.1111 | 0.4444 |
| last_10 | 0.20 | 9 | - | 20.000 | 2.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 7.000 | 0.1000 | 0.1429 | 0.3000 | 0.1000 | 0.0500 | 0.1500 | 0.0500 | 0.3500 |
| season | 0.60 | 21 | - | 119.000 | 36.000 | 7.000 | 0.000 | 3.000 | 15.000 | 13.000 | 8.000 | 35.000 | 0.3025 | 0.3465 | 0.4370 | 0.3025 | 0.0252 | 0.1260 | 0.0672 | 0.2941 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1930 |
| predicted_3B | 0.0030 |
| predicted_AB | 4.2070 |
| predicted_AVG | 0.2330 |
| predicted_BB | 0.3120 |
| predicted_H | 0.9800 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.1880 |
| predicted_OBP | 0.2880 |
| predicted_R | 0.5780 |
| predicted_RBI | 0.5370 |
| predicted_SLG | 0.4143 |
| predicted_SO | 1.3160 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1590 | 0.1930 | 0.1724 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 2.7050 | 4.2070 | 3.2969 | model_form_blend |
| predicted_AVG | 0.2710 | 0.2330 | 0.2560 | model_form_blend |
| predicted_BB | 0.1820 | 0.3120 | 0.2332 | model_form_blend |
| predicted_H | 0.5700 | 0.9800 | 0.7316 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.1100 | 0.1880 | 0.1407 | model_form_blend |
| predicted_OBP | 0.2840 | 0.2880 | 0.2856 | model_form_blend |
| predicted_R | 0.2950 | 0.5780 | 0.4065 | model_form_blend |
| predicted_RBI | 0.3300 | 0.5370 | 0.4116 | model_form_blend |
| predicted_SLG | 0.4030 | 0.4143 | 0.4075 | model_form_blend |
| predicted_SO | 0.7950 | 1.3160 | 1.0003 | 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 | 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 | 4 |
| H | 3 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.303 |
| 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 | 20260606_OAK@HOU |
| game_type | short |
| mlbID | 687515 |
| playerID | 687515 |
| playerName | Colby Thomas |
| pos | RF |
| started | False |
| startingPosition | LF |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-06 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 5.9 |
| sl_woba | 0.319 |
| sl_xwoba | 0.333 |
| sl_xba | 0.238 |
| sl_xslg | 0.497 |
| sl_sweet_spot_percent | 31.4 |
| sl_barrel_batted_rate | 11.4 |
| sl_hard_hit_percent | 40.0 |
| sl_exit_velocity_avg | 91.3 |
| sl_launch_angle_avg | 18.4 |
| sl_whiff_percent | 32.4 |
| sl_swing_percent | 57.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.232 | 0.000 | 0.000 | Hitting_2B | 0.232 | 0.000 | -0.232 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.730 | 4.000 | 8.000 | Hitting_AB | 4.156 | 5.000 | -0.156 | -1.000 |
| predicted_AVG | 0.232 | 0.000 | 0.250 | Hitting_AVG | 0.303 | 0.200 | -0.303 | -0.200 |
| predicted_BB | 0.422 | 0.000 | 1.000 | Hitting_BB | 0.422 | 0.000 | -0.422 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.100 | 0.000 | 2.000 | Hitting_H | 1.257 | 1.000 | -1.257 | -1.000 |
| predicted_HR | 0.250 | 0.000 | 0.000 | Hitting_HR | 0.262 | 0.000 | -0.262 | 0.000 |
| predicted_OBP | 0.299 | 0.000 | 0.333 | Hitting_OBP | 0.371 | 0.200 | -0.371 | -0.200 |
| predicted_R | 0.726 | 0.000 | 1.000 | Hitting_R | 0.726 | 1.000 | -0.726 | -1.000 |
| predicted_RBI | 0.570 | 0.000 | 1.000 | Hitting_RBI | 0.570 | 0.000 | -0.570 | 0.000 |
| predicted_SLG | 0.470 | 0.000 | 0.250 | Hitting_SLG | 0.547 | 0.200 | -0.547 | -0.200 |
| predicted_SO | 0.899 | 2.000 | 2.000 | Hitting_SO | 0.899 | 1.000 | 1.101 | 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.8990 -> 2.0000 (boost 1.1010, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.7300 -> 7.9230 (boost 3.1930, 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 | 6 | 0 | 6 | 0 | 6 | - | predicted_R: 1.2731 -> 1.1618 (deboost -0.1113, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 5 | 3 | 4 | 4 | predicted_SO: 1.4923 -> 2.0000 (boost 0.5077, worse) | predicted_HR: 0.4751 -> 0.0000 (deboost -0.4751, worse) | AB rounded to 8 (raw=7.92), rates preserved: AVG=0.242 HR/AB=0.060 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1618 -> 1.0000 (deboost -0.1618, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2938 -> 0.3330 (boost 0.0392, better) | predicted_SLG: 0.4701 -> 0.2500 (deboost -0.2201, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.4701 (boost 0.2201, better) | predicted_OBP: 0.3330 -> 0.2938 (deboost -0.0392, worse) | 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.232,
"predicted_3B": 0.0,
"predicted_AB": 4.73,
"predicted_AVG": 0.232,
"predicted_BB": 0.422,
"predicted_H": 1.1,
"predicted_HR": 0.25,
"predicted_OBP": 0.299,
"predicted_R": 0.726,
"predicted_RBI": 0.57,
"predicted_SLG": 0.47,
"predicted_SO": 0.899
},
"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.3828,
"predicted_3B": 0.0004,
"predicted_AB": 7.923,
"predicted_AVG": 0.2469,
"predicted_BB": 0.5932,
"predicted_H": 2.0177,
"predicted_HBP": 0.077,
"predicted_HR": 0.5012,
"predicted_OBP": 0.3047,
"predicted_R": 1.2731,
"predicted_RBI": 1.0189,
"predicted_SLG": 0.4917,
"predicted_SO": 1.4695
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.232,
"after": 0.3828,
"delta": 0.1508,
"percent_delta": 0.65,
"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.73,
"after": 7.923,
"delta": 3.193,
"percent_delta": 0.6751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2469,
"delta": 0.0149,
"percent_delta": 0.0642,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.422,
"after": 0.5932,
"delta": 0.1712,
"percent_delta": 0.4057,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1,
"after": 2.0177,
"delta": 0.9177,
"percent_delta": 0.8343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.25,
"after": 0.5012,
"delta": 0.2512,
"percent_delta": 1.0048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.3047,
"delta": 0.0057,
"percent_delta": 0.0191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.726,
"after": 1.2731,
"delta": 0.5471,
"percent_delta": 0.7536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.57,
"after": 1.0189,
"delta": 0.4489,
"percent_delta": 0.7875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.47,
"after": 0.4917,
"delta": 0.0217,
"percent_delta": 0.0462,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.899,
"after": 1.4695,
"delta": 0.5705,
"percent_delta": 0.6346,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.73,
"after": 7.923,
"delta": 3.193,
"percent_delta": 0.6751,
"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": 9,
"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.3828,
"predicted_3B": 0.0004,
"predicted_AB": 7.923,
"predicted_AVG": 0.2418,
"predicted_BB": 0.584,
"predicted_H": 1.9154,
"predicted_HBP": 0.077,
"predicted_HR": 0.4751,
"predicted_OBP": 0.2938,
"predicted_R": 1.1618,
"predicted_RBI": 0.9298,
"predicted_SLG": 0.4701,
"predicted_SO": 1.4923
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3828,
"after": 0.3828,
"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": 7.923,
"after": 7.923,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2469,
"after": 0.2418,
"delta": -0.0051,
"percent_delta": -0.0207,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5932,
"after": 0.584,
"delta": -0.0092,
"percent_delta": -0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0177,
"after": 1.9154,
"delta": -0.1023,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.077,
"after": 0.077,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.5012,
"after": 0.4751,
"delta": -0.0261,
"percent_delta": -0.0521,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3047,
"after": 0.2938,
"delta": -0.0109,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2731,
"after": 1.1618,
"delta": -0.1113,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0189,
"after": 0.9298,
"delta": -0.0891,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4917,
"after": 0.4701,
"delta": -0.0216,
"percent_delta": -0.0439,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4695,
"after": 1.4923,
"delta": 0.0228,
"percent_delta": 0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.2731,
"after": 1.1618,
"delta": -0.1113,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=7.92), rates preserved: AVG=0.242 HR/AB=0.060",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3828,
"after": 0.0,
"delta": -0.3828,
"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": 7.923,
"after": 8.0,
"delta": 0.077,
"percent_delta": 0.0097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.584,
"after": 1.0,
"delta": 0.416,
"percent_delta": 0.7123,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9154,
"after": 2.0,
"delta": 0.0846,
"percent_delta": 0.0442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.077,
"after": 0.0,
"delta": -0.077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4751,
"after": 0.0,
"delta": -0.4751,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9298,
"after": 1.0,
"delta": 0.0702,
"percent_delta": 0.0755,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4923,
"after": 2.0,
"delta": 0.5077,
"percent_delta": 0.3402,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.4923,
"after": 2.0,
"delta": 0.5077,
"percent_delta": 0.3402,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4751,
"after": 0.0,
"delta": -0.4751,
"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": 8.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": 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": 8.0,
"after": 8.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": 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_R",
"before": 1.1618,
"after": 1.0,
"delta": -0.1618,
"percent_delta": -0.1393,
"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": 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_R",
"before": 1.1618,
"after": 1.0,
"delta": -0.1618,
"percent_delta": -0.1393,
"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": 8.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"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": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2418,
"after": 0.25,
"delta": 0.0082,
"percent_delta": 0.0339,
"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": 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_OBP",
"before": 0.2938,
"after": 0.333,
"delta": 0.0392,
"percent_delta": 0.1334,
"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.4701,
"after": 0.25,
"delta": -0.2201,
"percent_delta": -0.4682,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2938,
"after": 0.333,
"delta": 0.0392,
"percent_delta": 0.1334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4701,
"after": 0.25,
"delta": -0.2201,
"percent_delta": -0.4682,
"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": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_AB",
"before": 8.0,
"after": 4.0,
"delta": -4.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": 4.0,
"predicted_AVG": 0.2418,
"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.2938,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4701,
"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.2418,
"delta": -0.0082,
"percent_delta": -0.033,
"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.2938,
"delta": -0.0392,
"percent_delta": -0.1177,
"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.4701,
"delta": 0.2201,
"percent_delta": 0.8803,
"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.4701,
"delta": 0.2201,
"percent_delta": 0.8803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2938,
"delta": -0.0392,
"percent_delta": -0.1177,
"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.232,
"after": 0.0,
"delta": -0.232,
"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.73,
"after": 4.0,
"delta": -0.73,
"percent_delta": -0.1543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2418,
"delta": 0.0098,
"percent_delta": 0.0422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.422,
"after": 0.0,
"delta": -0.422,
"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.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2938,
"delta": -0.0052,
"percent_delta": -0.0174,
"direction": "deboost",
"projection_effect": "worse",
"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.57,
"after": 0.0,
"delta": -0.57,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.47,
"after": 0.4701,
"delta": 0.0001,
"percent_delta": 0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.899,
"after": 2.0,
"delta": 1.101,
"percent_delta": 1.2247,
"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.899,
"after": 2.0,
"delta": 1.101,
"percent_delta": 1.2247,
"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.232 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.730 | - |
| predicted_AVG | 0.232 | - |
| predicted_BB | 0.422 | - |
| predicted_H | 1.100 | - |
| predicted_HR | 0.250 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.726 | - |
| predicted_RBI | 0.570 | - |
| predicted_SLG | 0.470 | - |
| predicted_SO | 0.899 | - |
Final model 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.383 | 0.151 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.923 | 3.193 |
| predicted_AVG | 0.247 | 0.015 |
| predicted_BB | 0.593 | 0.171 |
| predicted_H | 2.018 | 0.918 |
| predicted_HBP | 0.077 | - |
| predicted_HR | 0.501 | 0.251 |
| predicted_OBP | 0.305 | 0.006 |
| predicted_R | 1.273 | 0.547 |
| predicted_RBI | 1.019 | 0.449 |
| predicted_SLG | 0.492 | 0.022 |
| predicted_SO | 1.470 | 0.571 |
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.383 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.923 | 0.000 |
| predicted_AVG | 0.242 | -0.005 |
| predicted_BB | 0.584 | -0.009 |
| predicted_H | 1.915 | -0.102 |
| predicted_HBP | 0.077 | 0.000 |
| predicted_HR | 0.475 | -0.026 |
| predicted_OBP | 0.294 | -0.011 |
| predicted_R | 1.162 | -0.111 |
| predicted_RBI | 0.930 | -0.089 |
| predicted_SLG | 0.470 | -0.022 |
| predicted_SO | 1.492 | 0.023 |
AB rounded to 8 (raw=7.92), rates preserved: AVG=0.242 HR/AB=0.060
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.383 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 8.000 | 0.077 |
| predicted_AVG | 0.250 | 0.008 |
| predicted_BB | 1.000 | 0.416 |
| predicted_H | 2.000 | 0.085 |
| predicted_HR | 0.000 | -0.475 |
| predicted_OBP | 0.333 | 0.039 |
| predicted_R | 1.000 | -0.162 |
| predicted_RBI | 1.000 | 0.070 |
| predicted_SLG | 0.250 | -0.220 |
| predicted_SO | 2.000 | 0.508 |
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 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 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 | 5.000 | 1.000 | 0.000 | 2.000 | 3.000 | 4.000 | 0.000 | 3.000 | 0.2174 | 0.2174 | 0.5217 | 0.2174 | 0.0870 | 0.1304 | 0.0000 | 0.1304 |
| last_10 | 0.20 | 9 | - | 42.000 | 8.000 | 1.000 | 0.000 | 3.000 | 5.000 | 5.000 | 1.000 | 5.000 | 0.1905 | 0.2093 | 0.4286 | 0.1905 | 0.0714 | 0.1191 | 0.0238 | 0.1191 |
| season | 0.60 | 59 | - | 985.000 | 298.000 | 55.000 | 0.000 | 62.000 | 135.000 | 172.000 | 100.000 | 213.000 | 0.3025 | 0.3709 | 0.5472 | 0.3025 | 0.0629 | 0.1371 | 0.1015 | 0.2162 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5730 |
| predicted_3B | 0.0010 |
| predicted_AB | 11.9500 |
| predicted_AVG | 0.2657 |
| predicted_BB | 0.8090 |
| predicted_H | 3.1750 |
| predicted_HBP | 0.0770 |
| predicted_HR | 0.8180 |
| predicted_OBP | 0.3120 |
| predicted_R | 1.9630 |
| predicted_RBI | 1.5850 |
| predicted_SLG | 0.5191 |
| predicted_SO | 2.1890 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2320 | 0.5730 | 0.3828 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.7300 | 11.9500 | 7.9230 | model_form_blend |
| predicted_AVG | 0.2320 | 0.2657 | 0.2469 | model_form_blend |
| predicted_BB | 0.4220 | 0.8090 | 0.5932 | model_form_blend |
| predicted_H | 1.1000 | 3.1750 | 2.0177 | model_form_blend |
| predicted_HBP | - | 0.0770 | 0.0770 | form_only |
| predicted_HR | 0.2500 | 0.8180 | 0.5012 | model_form_blend |
| predicted_OBP | 0.2990 | 0.3120 | 0.3047 | model_form_blend |
| predicted_R | 0.7260 | 1.9630 | 1.2731 | model_form_blend |
| predicted_RBI | 0.5700 | 1.5850 | 1.0189 | model_form_blend |
| predicted_SLG | 0.4700 | 0.5191 | 0.4917 | model_form_blend |
| predicted_SO | 0.8990 | 2.1890 | 1.4695 | 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 | 237 |
| 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.303 |
| 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 | 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 | 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 | C |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 669127 |
| playerID | 669127 |
| playerName | Shea Langeliers |
| pos | C |
| started | True |
| startingPosition | C |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.7 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.381 |
| sl_xwoba | 0.38 |
| sl_xba | 0.284 |
| sl_xslg | 0.541 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 15.0 |
| sl_hard_hit_percent | 44.6 |
| sl_exit_velocity_avg | 91.6 |
| sl_launch_angle_avg | 20.8 |
| sl_whiff_percent | 26.0 |
| sl_swing_percent | 51.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.210 | 0.000 | 0.000 | Hitting_2B | 0.210 | 0.000 | -0.210 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 4.000 | 4.000 | 7.000 | Hitting_AB | 3.626 | 5.000 | 0.374 | -1.000 |
| predicted_AVG | 0.235 | 0.000 | 0.286 | Hitting_AVG | 0.283 | 0.200 | -0.283 | -0.200 |
| predicted_BB | 0.957 | 0.000 | 2.000 | Hitting_BB | 0.957 | 0.000 | -0.957 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_H | 0.940 | 0.000 | 2.000 | Hitting_H | 1.027 | 1.000 | -1.027 | -1.000 |
| predicted_HR | 0.220 | 0.000 | 0.000 | Hitting_HR | 0.163 | 1.000 | -0.163 | -1.000 |
| predicted_OBP | 0.370 | 0.000 | 0.444 | Hitting_OBP | 0.437 | 0.200 | -0.437 | -0.200 |
| predicted_R | 0.658 | 0.000 | 1.000 | Hitting_R | 0.658 | 1.000 | -0.658 | -1.000 |
| predicted_RBI | 0.680 | 0.000 | 1.000 | Hitting_RBI | 0.696 | 2.000 | -0.696 | -2.000 |
| predicted_SLG | 0.453 | 0.000 | 0.286 | Hitting_SLG | 0.487 | 0.800 | -0.487 | -0.800 |
| predicted_SO | 1.339 | 1.000 | 2.000 | Hitting_SO | 1.339 | 2.000 | -0.339 | -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_OBP: 0.3700 -> 0.3825 (boost 0.0125, better) |
| Biggest Deboost | predicted_BB: 0.9570 -> 0.0000 (deboost -0.9570, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.0000 -> 6.6403 (boost 2.6403, 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_RBI: 1.2375 -> 1.1293 (deboost -0.1082, 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_H: 1.5232 -> 2.0000 (boost 0.4768, better) | predicted_HR: 0.3710 -> 0.0000 (deboost -0.3710, worse) | AB rounded to 7 (raw=6.64), rates preserved: AVG=0.229 HR/AB=0.056 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3825 -> 0.4440 (boost 0.0615, better) | predicted_SLG: 0.4491 -> 0.2860 (deboost -0.1631, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4491 (boost 0.1631, better) | predicted_OBP: 0.4440 -> 0.3825 (deboost -0.0615, worse) | 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.21,
"predicted_3B": 0.019,
"predicted_AB": 4.0,
"predicted_AVG": 0.235,
"predicted_BB": 0.957,
"predicted_H": 0.94,
"predicted_HR": 0.22,
"predicted_OBP": 0.37,
"predicted_R": 0.658,
"predicted_RBI": 0.68,
"predicted_SLG": 0.453,
"predicted_SO": 1.339
},
"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.2963,
"predicted_3B": 0.0248,
"predicted_AB": 6.6403,
"predicted_AVG": 0.2395,
"predicted_BB": 1.673,
"predicted_H": 1.6046,
"predicted_HBP": 0.059,
"predicted_HR": 0.3914,
"predicted_OBP": 0.3845,
"predicted_R": 1.122,
"predicted_RBI": 1.2375,
"predicted_SLG": 0.4628,
"predicted_SO": 2.2972
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.21,
"after": 0.2963,
"delta": 0.0863,
"percent_delta": 0.411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0248,
"delta": 0.0058,
"percent_delta": 0.3053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 6.6403,
"delta": 2.6403,
"percent_delta": 0.6601,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2395,
"delta": 0.0045,
"percent_delta": 0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.957,
"after": 1.673,
"delta": 0.716,
"percent_delta": 0.7482,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.6046,
"delta": 0.6646,
"percent_delta": 0.707,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.3914,
"delta": 0.1714,
"percent_delta": 0.7791,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.37,
"after": 0.3845,
"delta": 0.0145,
"percent_delta": 0.0392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.658,
"after": 1.122,
"delta": 0.464,
"percent_delta": 0.7052,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.68,
"after": 1.2375,
"delta": 0.5575,
"percent_delta": 0.8199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.453,
"after": 0.4628,
"delta": 0.0098,
"percent_delta": 0.0216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.339,
"after": 2.2972,
"delta": 0.9582,
"percent_delta": 0.7156,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 6.6403,
"delta": 2.6403,
"percent_delta": 0.6601,
"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.2963,
"predicted_3B": 0.0248,
"predicted_AB": 6.6403,
"predicted_AVG": 0.2294,
"predicted_BB": 1.6471,
"predicted_H": 1.5232,
"predicted_HBP": 0.059,
"predicted_HR": 0.371,
"predicted_OBP": 0.3825,
"predicted_R": 1.0239,
"predicted_RBI": 1.1293,
"predicted_SLG": 0.4491,
"predicted_SO": 2.3328
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2963,
"after": 0.2963,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0248,
"after": 0.0248,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6403,
"after": 6.6403,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2395,
"after": 0.2294,
"delta": -0.0101,
"percent_delta": -0.0422,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.673,
"after": 1.6471,
"delta": -0.0259,
"percent_delta": -0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6046,
"after": 1.5232,
"delta": -0.0814,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.3914,
"after": 0.371,
"delta": -0.0204,
"percent_delta": -0.0521,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3845,
"after": 0.3825,
"delta": -0.002,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.122,
"after": 1.0239,
"delta": -0.0981,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.2375,
"after": 1.1293,
"delta": -0.1082,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4628,
"after": 0.4491,
"delta": -0.0137,
"percent_delta": -0.0296,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.2972,
"after": 2.3328,
"delta": 0.0356,
"percent_delta": 0.0155,
"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": 1.2375,
"after": 1.1293,
"delta": -0.1082,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.64), rates preserved: AVG=0.229 HR/AB=0.056",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 2.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2963,
"after": 0.0,
"delta": -0.2963,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0248,
"after": 0.0,
"delta": -0.0248,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6403,
"after": 7.0,
"delta": 0.3597,
"percent_delta": 0.0542,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.6471,
"after": 2.0,
"delta": 0.3529,
"percent_delta": 0.2143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5232,
"after": 2.0,
"delta": 0.4768,
"percent_delta": 0.313,
"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.371,
"after": 0.0,
"delta": -0.371,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1293,
"after": 1.0,
"delta": -0.1293,
"percent_delta": -0.1145,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3328,
"after": 2.0,
"delta": -0.3328,
"percent_delta": -0.1427,
"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_H",
"before": 1.5232,
"after": 2.0,
"delta": 0.4768,
"percent_delta": 0.313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.371,
"after": 0.0,
"delta": -0.371,
"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": 7.0,
"predicted_BB": 2.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": 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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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_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_R",
"before": 1.0239,
"after": 1.0,
"delta": -0.0239,
"percent_delta": -0.0233,
"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_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": {}
},
{
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 2.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.444,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2294,
"after": 0.286,
"delta": 0.0566,
"percent_delta": 0.2467,
"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_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_OBP",
"before": 0.3825,
"after": 0.444,
"delta": 0.0615,
"percent_delta": 0.1608,
"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.4491,
"after": 0.286,
"delta": -0.1631,
"percent_delta": -0.3632,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3825,
"after": 0.444,
"delta": 0.0615,
"percent_delta": 0.1608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4491,
"after": 0.286,
"delta": -0.1631,
"percent_delta": -0.3632,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2294,
"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.3825,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4491,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.286,
"after": 0.2294,
"delta": -0.0566,
"percent_delta": -0.1979,
"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.444,
"after": 0.3825,
"delta": -0.0615,
"percent_delta": -0.1384,
"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.286,
"after": 0.4491,
"delta": 0.1631,
"percent_delta": 0.5703,
"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.286,
"after": 0.4491,
"delta": 0.1631,
"percent_delta": 0.5703,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.444,
"after": 0.3825,
"delta": -0.0615,
"percent_delta": -0.1384,
"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.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.235,
"after": 0.2294,
"delta": -0.0056,
"percent_delta": -0.0238,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.957,
"after": 0.0,
"delta": -0.957,
"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.22,
"after": 0.0,
"delta": -0.22,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.37,
"after": 0.3825,
"delta": 0.0125,
"percent_delta": 0.0338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.658,
"after": 0.0,
"delta": -0.658,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.453,
"after": 0.4491,
"delta": -0.0039,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.339,
"after": 1.0,
"delta": -0.339,
"percent_delta": -0.2532,
"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_OBP",
"before": 0.37,
"after": 0.3825,
"delta": 0.0125,
"percent_delta": 0.0338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.957,
"after": 0.0,
"delta": -0.957,
"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.019 | - |
| predicted_AB | 4.000 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.957 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.220 | - |
| predicted_OBP | 0.370 | - |
| predicted_R | 0.658 | - |
| predicted_RBI | 0.680 | - |
| predicted_SLG | 0.453 | - |
| predicted_SO | 1.339 | - |
Final model 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.296 | 0.086 |
| predicted_3B | 0.025 | 0.006 |
| predicted_AB | 6.640 | 2.640 |
| predicted_AVG | 0.239 | 0.005 |
| predicted_BB | 1.673 | 0.716 |
| predicted_H | 1.605 | 0.665 |
| predicted_HBP | 0.059 | - |
| predicted_HR | 0.391 | 0.171 |
| predicted_OBP | 0.385 | 0.015 |
| predicted_R | 1.122 | 0.464 |
| predicted_RBI | 1.238 | 0.557 |
| predicted_SLG | 0.463 | 0.010 |
| predicted_SO | 2.297 | 0.958 |
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.296 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 6.640 | 0.000 |
| predicted_AVG | 0.229 | -0.010 |
| predicted_BB | 1.647 | -0.026 |
| predicted_H | 1.523 | -0.081 |
| predicted_HBP | 0.059 | 0.000 |
| predicted_HR | 0.371 | -0.020 |
| predicted_OBP | 0.383 | -0.002 |
| predicted_R | 1.024 | -0.098 |
| predicted_RBI | 1.129 | -0.108 |
| predicted_SLG | 0.449 | -0.014 |
| predicted_SO | 2.333 | 0.036 |
AB rounded to 7 (raw=6.64), rates preserved: AVG=0.229 HR/AB=0.056
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 2.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 2.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.296 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 7.000 | 0.360 |
| predicted_AVG | 0.286 | 0.057 |
| predicted_BB | 2.000 | 0.353 |
| predicted_H | 2.000 | 0.477 |
| predicted_HR | 0.000 | -0.371 |
| predicted_OBP | 0.444 | 0.061 |
| predicted_R | 1.000 | -0.024 |
| predicted_RBI | 1.000 | -0.129 |
| predicted_SLG | 0.286 | -0.163 |
| predicted_SO | 2.000 | -0.333 |
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 | -3.000 |
| BB | 0.000 | -2.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -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 | 5.000 | 6.000 | 0.1176 | 0.3182 | 0.2941 | 0.1177 | 0.0588 | 0.1765 | 0.2941 | 0.3529 |
| last_10 | 0.20 | 10 | - | 35.000 | 9.000 | 1.000 | 0.000 | 4.000 | 8.000 | 7.000 | 8.000 | 11.000 | 0.2571 | 0.3953 | 0.6286 | 0.2571 | 0.1143 | 0.2286 | 0.2286 | 0.3143 |
| season | 0.60 | 64 | - | 932.000 | 264.000 | 54.000 | 5.000 | 42.000 | 179.000 | 169.000 | 246.000 | 344.000 | 0.2833 | 0.4372 | 0.4871 | 0.2833 | 0.0451 | 0.1921 | 0.2640 | 0.3691 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4050 |
| predicted_3B | 0.0320 |
| predicted_AB | 9.9630 |
| predicted_AVG | 0.2451 |
| predicted_BB | 2.5740 |
| predicted_H | 2.4410 |
| predicted_HBP | 0.0590 |
| predicted_HR | 0.6070 |
| predicted_OBP | 0.4028 |
| predicted_R | 1.7060 |
| predicted_RBI | 1.9390 |
| predicted_SLG | 0.4751 |
| predicted_SO | 3.5030 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2100 | 0.4050 | 0.2963 | model_form_blend |
| predicted_3B | 0.0190 | 0.0320 | 0.0248 | model_form_blend |
| predicted_AB | 4.0000 | 9.9630 | 6.6403 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2451 | 0.2395 | model_form_blend |
| predicted_BB | 0.9570 | 2.5740 | 1.6730 | model_form_blend |
| predicted_H | 0.9400 | 2.4410 | 1.6046 | model_form_blend |
| predicted_HBP | - | 0.0590 | 0.0590 | form_only |
| predicted_HR | 0.2200 | 0.6070 | 0.3914 | model_form_blend |
| predicted_OBP | 0.3700 | 0.4028 | 0.3845 | model_form_blend |
| predicted_R | 0.6580 | 1.7060 | 1.1220 | model_form_blend |
| predicted_RBI | 0.6800 | 1.9390 | 1.2375 | model_form_blend |
| predicted_SLG | 0.4530 | 0.4751 | 0.4628 | model_form_blend |
| predicted_SO | 1.3390 | 3.5030 | 2.2972 | 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 | 257 |
| 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.283 |
| 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 | 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 | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| 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 | 1B |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 701762 |
| playerID | 701762 |
| playerName | Nick Kurtz |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 29.0 |
| sl_bb_percent | 20.7 |
| sl_woba | 0.405 |
| sl_xwoba | 0.399 |
| sl_xba | 0.258 |
| sl_xslg | 0.511 |
| sl_sweet_spot_percent | 40.3 |
| sl_barrel_batted_rate | 18.8 |
| sl_hard_hit_percent | 57.6 |
| sl_exit_velocity_avg | 94.2 |
| sl_launch_angle_avg | 12.9 |
| sl_whiff_percent | 35.4 |
| sl_swing_percent | 40.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.198 | 0.000 | 0.000 | Hitting_2B | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_3B | 0.094 | 0.000 | 0.000 | Hitting_3B | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_AB | 3.698 | 4.000 | 8.000 | Hitting_AB | 3.698 | 2.000 | 0.302 | 2.000 |
| predicted_AVG | 0.220 | 0.000 | 0.250 | Hitting_AVG | 0.245 | 0.000 | -0.245 | 0.000 |
| predicted_BB | 0.217 | 0.000 | 1.000 | Hitting_BB | 0.217 | 1.000 | -0.217 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.047 | 0.000 | -0.047 | 0.000 |
| predicted_H | 0.810 | 0.000 | 2.000 | Hitting_H | 0.906 | 0.000 | -0.906 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.075 | 0.000 | -0.075 | 0.000 |
| predicted_OBP | 0.301 | 0.000 | 0.333 | Hitting_OBP | 0.305 | 0.333 | -0.305 | -0.333 |
| predicted_R | 0.604 | 0.000 | 1.000 | Hitting_R | 0.604 | 0.000 | -0.604 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 1.000 | Hitting_RBI | 0.283 | 0.000 | -0.283 | 0.000 |
| predicted_SLG | 0.346 | 0.000 | 0.250 | Hitting_SLG | 0.411 | 0.000 | -0.411 | 0.000 |
| predicted_SO | 1.453 | 0.000 | 3.000 | Hitting_SO | 1.453 | 2.000 | -1.453 | -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_AB: 3.6980 -> 4.0000 (boost 0.3020, better) |
| Biggest Deboost | predicted_SO: 1.4530 -> 0.0000 (deboost -1.4530, 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 | 11 | 9 | 2 | 8 | 3 | predicted_AB: 3.6980 -> 7.8065 (boost 4.1085, better) | predicted_AVG: 0.2200 -> 0.2144 (deboost -0.0056, 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 | 5 | 0 | 5 | 0 | 5 | - | predicted_R: 1.1169 -> 1.0193 (deboost -0.0976, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 5 | 4 | predicted_RBI: 0.5359 -> 1.0000 (boost 0.4641, better) | predicted_HBP: 0.4760 -> 0.0000 (deboost -0.4760, worse) | AB rounded to 8 (raw=7.81), rates preserved: AVG=0.200 HR/AB=0.019 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2561 -> 0.3330 (boost 0.0769, better) | predicted_SLG: 0.3461 -> 0.2500 (deboost -0.0961, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3461 (boost 0.0961, better) | predicted_OBP: 0.3330 -> 0.2561 (deboost -0.0769, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691777",
"player_name": "Max Muncy",
"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.198,
"predicted_3B": 0.094,
"predicted_AB": 3.698,
"predicted_AVG": 0.22,
"predicted_BB": 0.217,
"predicted_H": 0.81,
"predicted_HR": 0.09,
"predicted_OBP": 0.301,
"predicted_R": 0.604,
"predicted_RBI": 0.35,
"predicted_SLG": 0.346,
"predicted_SO": 1.453
},
"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.3688,
"predicted_3B": 0.1682,
"predicted_AB": 7.8065,
"predicted_AVG": 0.2144,
"predicted_BB": 0.603,
"predicted_H": 1.6412,
"predicted_HBP": 0.476,
"predicted_HR": 0.1543,
"predicted_OBP": 0.2957,
"predicted_R": 1.1169,
"predicted_RBI": 0.5872,
"predicted_SLG": 0.3462,
"predicted_SO": 3.2267
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.198,
"after": 0.3688,
"delta": 0.1708,
"percent_delta": 0.8626,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.094,
"after": 0.1682,
"delta": 0.0742,
"percent_delta": 0.7894,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.698,
"after": 7.8065,
"delta": 4.1085,
"percent_delta": 1.111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2144,
"delta": -0.0056,
"percent_delta": -0.0255,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.217,
"after": 0.603,
"delta": 0.386,
"percent_delta": 1.7788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.6412,
"delta": 0.8312,
"percent_delta": 1.0262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1543,
"delta": 0.0643,
"percent_delta": 0.7144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2957,
"delta": -0.0053,
"percent_delta": -0.0176,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.604,
"after": 1.1169,
"delta": 0.5129,
"percent_delta": 0.8492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.5872,
"delta": 0.2372,
"percent_delta": 0.6777,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.346,
"after": 0.3462,
"delta": 0.0002,
"percent_delta": 0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.453,
"after": 3.2267,
"delta": 1.7737,
"percent_delta": 1.2207,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 9,
"deboosted_metrics": 2,
"better_metrics": 8,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.698,
"after": 7.8065,
"delta": 4.1085,
"percent_delta": 1.111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2144,
"delta": -0.0056,
"percent_delta": -0.0255,
"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": 2,
"last_10": 3,
"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.3688,
"predicted_3B": 0.1682,
"predicted_AB": 7.8065,
"predicted_AVG": 0.1996,
"predicted_BB": 0.5937,
"predicted_H": 1.558,
"predicted_HBP": 0.476,
"predicted_HR": 0.1463,
"predicted_OBP": 0.2561,
"predicted_R": 1.0193,
"predicted_RBI": 0.5359,
"predicted_SLG": 0.3461,
"predicted_SO": 3.2767
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3688,
"after": 0.3688,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1682,
"after": 0.1682,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.8065,
"after": 7.8065,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2144,
"after": 0.1996,
"delta": -0.0148,
"percent_delta": -0.069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.603,
"after": 0.5937,
"delta": -0.0093,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6412,
"after": 1.558,
"delta": -0.0832,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.476,
"after": 0.476,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1543,
"after": 0.1463,
"delta": -0.008,
"percent_delta": -0.0518,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2957,
"after": 0.2561,
"delta": -0.0396,
"percent_delta": -0.1339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1169,
"after": 1.0193,
"delta": -0.0976,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5872,
"after": 0.5359,
"delta": -0.0513,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3462,
"after": 0.3461,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.2267,
"after": 3.2767,
"delta": 0.05,
"percent_delta": 0.0155,
"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_R",
"before": 1.1169,
"after": 1.0193,
"delta": -0.0976,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=7.81), rates preserved: AVG=0.200 HR/AB=0.019",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3688,
"after": 0.0,
"delta": -0.3688,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1682,
"after": 0.0,
"delta": -0.1682,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 7.8065,
"after": 8.0,
"delta": 0.1935,
"percent_delta": 0.0248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5937,
"after": 1.0,
"delta": 0.4063,
"percent_delta": 0.6844,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.558,
"after": 2.0,
"delta": 0.442,
"percent_delta": 0.2837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.476,
"after": 0.0,
"delta": -0.476,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1463,
"after": 0.0,
"delta": -0.1463,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5359,
"after": 1.0,
"delta": 0.4641,
"percent_delta": 0.866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.2767,
"after": 3.0,
"delta": -0.2767,
"percent_delta": -0.0844,
"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_RBI",
"before": 0.5359,
"after": 1.0,
"delta": 0.4641,
"percent_delta": 0.866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.476,
"after": 0.0,
"delta": -0.476,
"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": 8.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": 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": 8.0,
"after": 8.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": 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_R",
"before": 1.0193,
"after": 1.0,
"delta": -0.0193,
"percent_delta": -0.0189,
"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_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": {}
},
{
"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": 8.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"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": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1996,
"after": 0.25,
"delta": 0.0504,
"percent_delta": 0.2525,
"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": 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_OBP",
"before": 0.2561,
"after": 0.333,
"delta": 0.0769,
"percent_delta": 0.3003,
"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.3461,
"after": 0.25,
"delta": -0.0961,
"percent_delta": -0.2777,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2561,
"after": 0.333,
"delta": 0.0769,
"percent_delta": 0.3003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3461,
"after": 0.25,
"delta": -0.0961,
"percent_delta": -0.2777,
"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": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 3.0,
"after": 0.0,
"delta": -3.0,
"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_AB",
"before": 8.0,
"after": 4.0,
"delta": -4.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": 4.0,
"predicted_AVG": 0.1996,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2561,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3461,
"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.1996,
"delta": -0.0504,
"percent_delta": -0.2017,
"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.2561,
"delta": -0.0769,
"percent_delta": -0.2308,
"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.3461,
"delta": 0.0961,
"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.25,
"after": 0.3461,
"delta": 0.0961,
"percent_delta": 0.3845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2561,
"delta": -0.0769,
"percent_delta": -0.2308,
"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.198,
"after": 0.0,
"delta": -0.198,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.094,
"after": 0.0,
"delta": -0.094,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.698,
"after": 4.0,
"delta": 0.302,
"percent_delta": 0.0817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.1996,
"delta": -0.0204,
"percent_delta": -0.0927,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.217,
"after": 0.0,
"delta": -0.217,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"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.301,
"after": 0.2561,
"delta": -0.0449,
"percent_delta": -0.1492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.604,
"after": 0.0,
"delta": -0.604,
"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.346,
"after": 0.3461,
"delta": 0.0001,
"percent_delta": 0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.453,
"after": 0.0,
"delta": -1.453,
"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_AB",
"before": 3.698,
"after": 4.0,
"delta": 0.302,
"percent_delta": 0.0817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.453,
"after": 0.0,
"delta": -1.453,
"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.198 | - |
| predicted_3B | 0.094 | - |
| predicted_AB | 3.698 | - |
| predicted_AVG | 0.220 | - |
| predicted_BB | 0.217 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.301 | - |
| predicted_R | 0.604 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.346 | - |
| predicted_SO | 1.453 | - |
Final model 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.369 | 0.171 |
| predicted_3B | 0.168 | 0.074 |
| predicted_AB | 7.806 | 4.108 |
| predicted_AVG | 0.214 | -0.006 |
| predicted_BB | 0.603 | 0.386 |
| predicted_H | 1.641 | 0.831 |
| predicted_HBP | 0.476 | - |
| predicted_HR | 0.154 | 0.064 |
| predicted_OBP | 0.296 | -0.005 |
| predicted_R | 1.117 | 0.513 |
| predicted_RBI | 0.587 | 0.237 |
| predicted_SLG | 0.346 | 0.000 |
| predicted_SO | 3.227 | 1.774 |
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.369 | 0.000 |
| predicted_3B | 0.168 | 0.000 |
| predicted_AB | 7.806 | 0.000 |
| predicted_AVG | 0.200 | -0.015 |
| predicted_BB | 0.594 | -0.009 |
| predicted_H | 1.558 | -0.083 |
| predicted_HBP | 0.476 | 0.000 |
| predicted_HR | 0.146 | -0.008 |
| predicted_OBP | 0.256 | -0.040 |
| predicted_R | 1.019 | -0.098 |
| predicted_RBI | 0.536 | -0.051 |
| predicted_SLG | 0.346 | -0.000 |
| predicted_SO | 3.277 | 0.050 |
AB rounded to 8 (raw=7.81), rates preserved: AVG=0.200 HR/AB=0.019
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 3.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 3.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.369 |
| predicted_3B | 0.000 | -0.168 |
| predicted_AB | 8.000 | 0.194 |
| predicted_AVG | 0.250 | 0.050 |
| predicted_BB | 1.000 | 0.406 |
| predicted_H | 2.000 | 0.442 |
| predicted_HR | 0.000 | -0.146 |
| predicted_OBP | 0.333 | 0.077 |
| predicted_R | 1.000 | -0.019 |
| predicted_RBI | 1.000 | 0.464 |
| predicted_SLG | 0.250 | -0.096 |
| predicted_SO | 3.000 | -0.277 |
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 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -3.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 | - | 14.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 3.000 | 10.000 | 0.0000 | 0.1765 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.2143 | 0.7143 |
| last_10 | 0.20 | 3 | - | 28.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 6.000 | 14.000 | 0.0000 | 0.2432 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.2143 | 0.5000 |
| season | 0.60 | 26 | - | 392.000 | 96.000 | 21.000 | 10.000 | 8.000 | 30.000 | 64.000 | 23.000 | 154.000 | 0.2449 | 0.3045 | 0.4107 | 0.2449 | 0.0204 | 0.0765 | 0.0587 | 0.3929 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5940 |
| predicted_3B | 0.2660 |
| predicted_AB | 13.2230 |
| predicted_AVG | 0.2070 |
| predicted_BB | 1.1120 |
| predicted_H | 2.7370 |
| predicted_HBP | 0.4760 |
| predicted_HR | 0.2390 |
| predicted_OBP | 0.2886 |
| predicted_R | 1.7930 |
| predicted_RBI | 0.9000 |
| predicted_SLG | 0.3465 |
| predicted_SO | 5.5650 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1980 | 0.5940 | 0.3688 | model_form_blend |
| predicted_3B | 0.0940 | 0.2660 | 0.1682 | model_form_blend |
| predicted_AB | 3.6980 | 13.2230 | 7.8065 | model_form_blend |
| predicted_AVG | 0.2200 | 0.2070 | 0.2144 | model_form_blend |
| predicted_BB | 0.2170 | 1.1120 | 0.6030 | model_form_blend |
| predicted_H | 0.8100 | 2.7370 | 1.6412 | model_form_blend |
| predicted_HBP | - | 0.4760 | 0.4760 | form_only |
| predicted_HR | 0.0900 | 0.2390 | 0.1543 | model_form_blend |
| predicted_OBP | 0.3010 | 0.2886 | 0.2957 | model_form_blend |
| predicted_R | 0.6040 | 1.7930 | 1.1169 | model_form_blend |
| predicted_RBI | 0.3500 | 0.9000 | 0.5872 | model_form_blend |
| predicted_SLG | 0.3460 | 0.3465 | 0.3462 | model_form_blend |
| predicted_SO | 1.4530 | 5.5650 | 3.2267 | 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 | 106 |
| 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.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 | 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 | 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 | 3B |
| gameID | 20260425_OAK@TEX |
| game_type | full |
| mlbID | 691777 |
| playerID | 691777 |
| playerName | Max Muncy |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | OAK |
| teamID | 20 |
| game_date | 2026-04-25 |
| game_pk | 822910.0 |
| sl_k_percent | 35.6 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.313 |
| sl_xwoba | 0.303 |
| sl_xba | 0.224 |
| sl_xslg | 0.391 |
| sl_sweet_spot_percent | 35.1 |
| sl_barrel_batted_rate | 12.3 |
| sl_hard_hit_percent | 56.1 |
| sl_exit_velocity_avg | 92.5 |
| sl_launch_angle_avg | 10.5 |
| sl_whiff_percent | 35.4 |
| sl_swing_percent | 51.0 |
| at_bat_number | 41.0 |
| ab_pitcher | 669022.0 |
| ab_pitcher_name | Gore, MacKenzie |
| ab_home_team | TEX |
| ab_away_team | ATH |
| ab_game_type | R |
| ab_stand | R |
| ab_p_throws | L |
| ab_inning | 5.0 |
| ab_inning_topbot | Top |
| ab_outs_when_up | 1.0 |
| ab_on_1b_start | 805779.0 |
| ab_balls_start | 0.0 |
| ab_strikes_start | 0.0 |
| ab_home_score_start | 2.0 |
| ab_away_score_start | 3.0 |
| ab_bat_score_start | 3.0 |
| ab_fld_score_start | 2.0 |
| ab_event | strikeout |
| ab_event_description | Max Muncy strikes out swinging. |
| ab_event_type | S |
| ab_hit_location | 2.0 |
| ab_pitch_type_last | FF |
| ab_pitch_name_last | 4-Seam Fastball |
| ab_zone_last | 11.0 |
| ab_launch_speed_last | 71.9 |
| ab_launch_angle_last | 9.0 |
| ab_hit_distance_last | 73.0 |
| ab_estimated_woba_last | 0.0 |
| ab_woba_value | 0.0 |
| ab_woba_denom | 1.0 |
| ab_babip_value | 0.0 |
| ab_iso_value | 0.0 |
| ab_balls_end | 1.0 |
| ab_strikes_end | 2.0 |
| ab_home_score_end | 2.0 |
| ab_away_score_end | 3.0 |
| ab_bat_score_end | 3.0 |
| ab_fld_score_end | 2.0 |
| ab_pitch_count | 5.0 |
| ab_release_speed_avg | 93.08 |
| ab_release_spin_rate_avg | 2198.0 |
| ab_effective_speed_avg | 93.68 |
| ab_launch_speed_avg | 72.86666666666667 |
| ab_launch_angle_avg | 24.33333333333333 |
| ab_delta_run_exp_avg | -0.051 |
| ab_delta_home_win_exp_avg | 0.0062 |
| ab_delta_pitcher_run_exp_avg | 0.051 |
| ab_bat_speed_avg | 77.175 |
| ab_swing_length_avg | 6.825 |
| ab_launch_speed_max | 75.5 |
| ab_hit_distance_sc_max | 182.0 |
| ab_release_speed_max | 95.8 |
| ab_release_spin_rate_max | 2363.0 |
| ab_release_speed_min | 88.0 |
| ab_release_spin_rate_min | 1900.0 |
| ab_delta_run_exp_sum | -0.255 |
| ab_delta_home_win_exp_sum | 0.031 |
| ab_delta_pitcher_run_exp_sum | 0.255 |
| ab_result_is_hit | False |
| ab_result_is_walk | False |
| ab_result_is_strikeout | True |
| ab_result_is_hbp | False |
| 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.126 | 0.000 | 0.000 | Hitting_2B | 0.122 | 1.000 | -0.122 | -1.000 |
| predicted_3B | 0.035 | 0.000 | 0.000 | Hitting_3B | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_AB | 3.713 | 3.000 | 6.000 | Hitting_AB | 3.612 | 4.000 | -0.612 | -1.000 |
| predicted_AVG | 0.250 | 0.333 | 0.167 | Hitting_AVG | 0.258 | 0.250 | 0.075 | 0.083 |
| predicted_BB | 0.259 | 0.000 | 0.000 | Hitting_BB | 0.252 | 0.000 | -0.252 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_H | 0.300 | 1.000 | 1.000 | Hitting_H | 0.932 | 1.000 | 0.068 | 0.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.177 | 0.000 | -0.177 | 0.000 |
| predicted_OBP | 0.315 | 0.333 | 0.167 | Hitting_OBP | 0.311 | 0.250 | 0.022 | 0.083 |
| predicted_R | 0.594 | 0.000 | 1.000 | Hitting_R | 0.592 | 1.000 | -0.592 | -1.000 |
| predicted_RBI | 0.160 | 0.000 | 0.000 | Hitting_RBI | 0.497 | 0.000 | -0.497 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.163 | 0.000 | -0.163 | 0.000 |
| predicted_SLG | 0.405 | 0.333 | 0.167 | Hitting_SLG | 0.458 | 0.500 | -0.124 | -0.167 |
| predicted_SO | 0.986 | 2.000 | 2.000 | Hitting_SO | 0.959 | 0.000 | 1.041 | 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.9860 -> 2.0000 (boost 1.0140, worse) |
| Biggest Deboost | predicted_AB: 3.7130 -> 3.0000 (deboost -0.7130, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.7130 -> 5.6968 (boost 1.9838, 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_SLG: 0.4210 -> 0.3262 (deboost -0.0948, 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: 1.4505 -> 2.0000 (boost 0.5495, worse) | predicted_BB: 0.4719 -> 0.0000 (deboost -0.4719, worse) | AB rounded to 6 (raw=5.70), rates preserved: AVG=0.198 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7340 -> 1.0000 (boost 0.2660, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3262 -> 0.1670 (deboost -0.1592, 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_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3262 (boost 0.1592, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "680869",
"player_name": "Zack Gelof",
"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.126,
"predicted_3B": 0.035,
"predicted_AB": 3.713,
"predicted_AVG": 0.25,
"predicted_BB": 0.259,
"predicted_H": 0.3,
"predicted_HR": 0.04,
"predicted_OBP": 0.315,
"predicted_R": 0.594,
"predicted_RBI": 0.16,
"predicted_SLG": 0.405,
"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.2854,
"predicted_3B": 0.0398,
"predicted_AB": 5.6968,
"predicted_AVG": 0.264,
"predicted_BB": 0.4793,
"predicted_H": 1.1857,
"predicted_HBP": 0.039,
"predicted_HR": 0.1293,
"predicted_OBP": 0.3281,
"predicted_R": 0.8043,
"predicted_RBI": 0.5101,
"predicted_SLG": 0.421,
"predicted_SO": 1.4284
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.126,
"after": 0.2854,
"delta": 0.1594,
"percent_delta": 1.2651,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.035,
"after": 0.0398,
"delta": 0.0048,
"percent_delta": 0.1371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.713,
"after": 5.6968,
"delta": 1.9838,
"percent_delta": 0.5343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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": 0.259,
"after": 0.4793,
"delta": 0.2203,
"percent_delta": 0.8506,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 1.1857,
"delta": 0.8857,
"percent_delta": 2.9523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.1293,
"delta": 0.0893,
"percent_delta": 2.2325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3281,
"delta": 0.0131,
"percent_delta": 0.0416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.594,
"after": 0.8043,
"delta": 0.2103,
"percent_delta": 0.354,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 0.5101,
"delta": 0.3501,
"percent_delta": 2.1881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.405,
"after": 0.421,
"delta": 0.016,
"percent_delta": 0.0395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.986,
"after": 1.4284,
"delta": 0.4424,
"percent_delta": 0.4487,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.713,
"after": 5.6968,
"delta": 1.9838,
"percent_delta": 0.5343,
"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.2854,
"predicted_3B": 0.0398,
"predicted_AB": 5.6968,
"predicted_AVG": 0.1976,
"predicted_BB": 0.4719,
"predicted_H": 1.1256,
"predicted_HBP": 0.039,
"predicted_HR": 0.1226,
"predicted_OBP": 0.259,
"predicted_R": 0.734,
"predicted_RBI": 0.4655,
"predicted_SLG": 0.3262,
"predicted_SO": 1.4505
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2854,
"after": 0.2854,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0398,
"after": 0.0398,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6968,
"after": 5.6968,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.1976,
"delta": -0.0664,
"percent_delta": -0.2515,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4793,
"after": 0.4719,
"delta": -0.0074,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1857,
"after": 1.1256,
"delta": -0.0601,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.1293,
"after": 0.1226,
"delta": -0.0067,
"percent_delta": -0.0518,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3281,
"after": 0.259,
"delta": -0.0691,
"percent_delta": -0.2106,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8043,
"after": 0.734,
"delta": -0.0703,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5101,
"after": 0.4655,
"delta": -0.0446,
"percent_delta": -0.0874,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.3262,
"delta": -0.0948,
"percent_delta": -0.2252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4284,
"after": 1.4505,
"delta": 0.0221,
"percent_delta": 0.0155,
"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_SLG",
"before": 0.421,
"after": 0.3262,
"delta": -0.0948,
"percent_delta": -0.2252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.70), rates preserved: AVG=0.198 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2854,
"after": 0.0,
"delta": -0.2854,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0398,
"after": 0.0,
"delta": -0.0398,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6968,
"after": 6.0,
"delta": 0.3032,
"percent_delta": 0.0532,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4719,
"after": 0.0,
"delta": -0.4719,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1256,
"after": 1.0,
"delta": -0.1256,
"percent_delta": -0.1116,
"direction": "deboost",
"projection_effect": "worse",
"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.1226,
"after": 0.0,
"delta": -0.1226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4655,
"after": 0.0,
"delta": -0.4655,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4505,
"after": 2.0,
"delta": 0.5495,
"percent_delta": 0.3788,
"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": 1.4505,
"after": 2.0,
"delta": 0.5495,
"percent_delta": 0.3788,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4719,
"after": 0.0,
"delta": -0.4719,
"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": 6.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": 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": 6.0,
"after": 6.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.734,
"after": 1.0,
"delta": 0.266,
"percent_delta": 0.3624,
"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": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.734,
"after": 1.0,
"delta": 0.266,
"percent_delta": 0.3624,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.167,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1976,
"after": 0.167,
"delta": -0.0306,
"percent_delta": -0.1549,
"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.259,
"after": 0.167,
"delta": -0.092,
"percent_delta": -0.3552,
"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.3262,
"after": 0.167,
"delta": -0.1592,
"percent_delta": -0.488,
"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_SLG",
"before": 0.3262,
"after": 0.167,
"delta": -0.1592,
"percent_delta": -0.488,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 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_AB",
"before": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.1976,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.259,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3262,
"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.167,
"after": 0.1976,
"delta": 0.0306,
"percent_delta": 0.1831,
"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.167,
"after": 0.259,
"delta": 0.092,
"percent_delta": 0.5507,
"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.167,
"after": 0.3262,
"delta": 0.1592,
"percent_delta": 0.9533,
"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.167,
"after": 0.3262,
"delta": 0.1592,
"percent_delta": 0.9533,
"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.126,
"after": 0.0,
"delta": -0.126,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.035,
"after": 0.0,
"delta": -0.035,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.713,
"after": 3.0,
"delta": -0.713,
"percent_delta": -0.192,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1976,
"delta": -0.0524,
"percent_delta": -0.2096,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.259,
"after": 0.0,
"delta": -0.259,
"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.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.259,
"delta": -0.056,
"percent_delta": -0.1778,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.594,
"after": 0.0,
"delta": -0.594,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.405,
"after": 0.3262,
"delta": -0.0788,
"percent_delta": -0.1946,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.986,
"after": 2.0,
"delta": 1.014,
"percent_delta": 1.0284,
"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.986,
"after": 2.0,
"delta": 1.014,
"percent_delta": 1.0284,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.713,
"after": 3.0,
"delta": -0.713,
"percent_delta": -0.192,
"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.126 | - |
| predicted_3B | 0.035 | - |
| predicted_AB | 3.713 | - |
| predicted_AVG | 0.250 | - |
| predicted_BB | 0.259 | - |
| predicted_H | 0.300 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.594 | - |
| predicted_RBI | 0.160 | - |
| predicted_SLG | 0.405 | - |
| 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.285 | 0.159 |
| predicted_3B | 0.040 | 0.005 |
| predicted_AB | 5.697 | 1.984 |
| predicted_AVG | 0.264 | 0.014 |
| predicted_BB | 0.479 | 0.220 |
| predicted_H | 1.186 | 0.886 |
| predicted_HBP | 0.039 | - |
| predicted_HR | 0.129 | 0.089 |
| predicted_OBP | 0.328 | 0.013 |
| predicted_R | 0.804 | 0.210 |
| predicted_RBI | 0.510 | 0.350 |
| predicted_SLG | 0.421 | 0.016 |
| predicted_SO | 1.428 | 0.442 |
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.285 | 0.000 |
| predicted_3B | 0.040 | 0.000 |
| predicted_AB | 5.697 | 0.000 |
| predicted_AVG | 0.198 | -0.066 |
| predicted_BB | 0.472 | -0.007 |
| predicted_H | 1.126 | -0.060 |
| predicted_HBP | 0.039 | 0.000 |
| predicted_HR | 0.123 | -0.007 |
| predicted_OBP | 0.259 | -0.069 |
| predicted_R | 0.734 | -0.070 |
| predicted_RBI | 0.466 | -0.045 |
| predicted_SLG | 0.326 | -0.095 |
| predicted_SO | 1.450 | 0.022 |
AB rounded to 6 (raw=5.70), rates preserved: AVG=0.198 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 0.000 | - |
| H | 1.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 | 6.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 | 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.285 |
| predicted_3B | 0.000 | -0.040 |
| predicted_AB | 6.000 | 0.303 |
| predicted_AVG | 0.167 | -0.031 |
| predicted_BB | 0.000 | -0.472 |
| predicted_H | 1.000 | -0.126 |
| predicted_HR | 0.000 | -0.123 |
| predicted_OBP | 0.167 | -0.092 |
| predicted_R | 1.000 | 0.266 |
| predicted_RBI | 0.000 | -0.466 |
| predicted_SLG | 0.167 | -0.159 |
| predicted_SO | 2.000 | 0.550 |
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 | -3.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 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.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 | 5.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 0.2941 | 0.4000 | 0.4118 | 0.2941 | 0.0000 | 0.0588 | 0.1765 | 0.1765 |
| last_10 | 0.20 | 10 | - | 37.000 | 13.000 | 3.000 | 0.000 | 0.000 | 4.000 | 2.000 | 3.000 | 9.000 | 0.3514 | 0.4000 | 0.4324 | 0.3513 | 0.0000 | 0.1081 | 0.0811 | 0.2432 |
| season | 0.60 | 45 | - | 531.000 | 137.000 | 18.000 | 5.000 | 26.000 | 73.000 | 85.000 | 37.000 | 141.000 | 0.2580 | 0.3112 | 0.4576 | 0.2580 | 0.0490 | 0.1375 | 0.0697 | 0.2655 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4920 |
| predicted_3B | 0.0460 |
| predicted_AB | 8.2690 |
| predicted_AVG | 0.2822 |
| predicted_BB | 0.7650 |
| predicted_H | 2.3340 |
| predicted_HBP | 0.0390 |
| predicted_HR | 0.2450 |
| predicted_OBP | 0.3451 |
| predicted_R | 1.0770 |
| predicted_RBI | 0.9640 |
| predicted_SLG | 0.4417 |
| predicted_SO | 2.0020 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1260 | 0.4920 | 0.2854 | model_form_blend |
| predicted_3B | 0.0350 | 0.0460 | 0.0398 | model_form_blend |
| predicted_AB | 3.7130 | 8.2690 | 5.6968 | model_form_blend |
| predicted_AVG | 0.2500 | 0.2822 | 0.2640 | model_form_blend |
| predicted_BB | 0.2590 | 0.7650 | 0.4793 | model_form_blend |
| predicted_H | 0.3000 | 2.3340 | 1.1857 | model_form_blend |
| predicted_HBP | - | 0.0390 | 0.0390 | form_only |
| predicted_HR | 0.0400 | 0.2450 | 0.1293 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3451 | 0.3281 | model_form_blend |
| predicted_R | 0.5940 | 1.0770 | 0.8043 | model_form_blend |
| predicted_RBI | 0.1600 | 0.9640 | 0.5101 | model_form_blend |
| predicted_SLG | 0.4050 | 0.4417 | 0.4210 | model_form_blend |
| predicted_SO | 0.9860 | 2.0020 | 1.4284 | 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 | 147 |
| Season rows before report date | 147 |
| Report year | 2026 |
| Profile rows used | 143 |
| 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 | 2 |
| 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 | 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 | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| 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 | 3B |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 680869 |
| playerID | 680869 |
| playerName | Zack Gelof |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.3 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.328 |
| sl_xwoba | 0.291 |
| sl_xba | 0.226 |
| sl_xslg | 0.385 |
| sl_sweet_spot_percent | 27.7 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 39.5 |
| sl_exit_velocity_avg | 88.3 |
| sl_launch_angle_avg | 16.0 |
| sl_whiff_percent | 27.1 |
| 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.208 | 0.000 | 0.000 | Hitting_2B | 0.196 | 0.000 | -0.196 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.528 | 4.000 | 5.000 | Hitting_AB | 3.339 | 2.000 | 0.661 | 2.000 |
| predicted_AVG | 0.276 | 0.250 | 0.200 | Hitting_AVG | 0.310 | 0.000 | -0.060 | 0.250 |
| predicted_BB | 0.340 | 0.000 | 0.000 | Hitting_BB | 0.339 | 0.000 | -0.339 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_H | 0.810 | 1.000 | 1.000 | Hitting_H | 1.036 | 0.000 | -0.036 | 1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.351 | 0.250 | 0.200 | Hitting_OBP | 0.376 | 0.000 | -0.126 | 0.250 |
| predicted_R | 0.226 | 0.000 | 0.000 | Hitting_R | 0.214 | 0.000 | -0.214 | 0.000 |
| predicted_RBI | 0.300 | 0.000 | 0.000 | Hitting_RBI | 0.304 | 0.000 | -0.304 | 0.000 |
| predicted_SLG | 0.391 | 0.250 | 0.200 | Hitting_SLG | 0.369 | 0.000 | -0.119 | 0.250 |
| predicted_SO | 0.981 | 1.000 | 2.000 | Hitting_SO | 0.929 | 1.000 | 0.071 | 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_AB: 3.5280 -> 4.0000 (boost 0.4720, better) |
| Biggest Deboost | predicted_BB: 0.3400 -> 0.0000 (deboost -0.3400, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.5280 -> 4.8465 (boost 1.3185, 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.3580 -> 1.2891 (deboost -0.0689, 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: 1.5103 -> 2.0000 (boost 0.4897, worse) | predicted_BB: 0.4100 -> 0.0000 (deboost -0.4100, worse) | AB rounded to 5 (raw=4.85), rates preserved: AVG=0.266 HR/AB=0.008 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3017 -> 0.0000 (deboost -0.3017, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3558 -> 0.2000 (deboost -0.1558, 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_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.3558 (boost 0.1558, better) | - | 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.208,
"predicted_3B": 0.0,
"predicted_AB": 3.528,
"predicted_AVG": 0.276,
"predicted_BB": 0.34,
"predicted_H": 0.81,
"predicted_HR": 0.05,
"predicted_OBP": 0.351,
"predicted_R": 0.226,
"predicted_RBI": 0.3,
"predicted_SLG": 0.391,
"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.3164,
"predicted_3B": 0.0012,
"predicted_AB": 4.8465,
"predicted_AVG": 0.2933,
"predicted_BB": 0.4165,
"predicted_H": 1.358,
"predicted_HBP": 0.183,
"predicted_HR": 0.0409,
"predicted_OBP": 0.3626,
"predicted_R": 0.3306,
"predicted_RBI": 0.4034,
"predicted_SLG": 0.3953,
"predicted_SO": 1.4872
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.208,
"after": 0.3164,
"delta": 0.1084,
"percent_delta": 0.5212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.528,
"after": 4.8465,
"delta": 1.3185,
"percent_delta": 0.3737,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.2933,
"delta": 0.0173,
"percent_delta": 0.0627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.34,
"after": 0.4165,
"delta": 0.0765,
"percent_delta": 0.225,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.358,
"delta": 0.548,
"percent_delta": 0.6765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0409,
"delta": -0.0091,
"percent_delta": -0.182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3626,
"delta": 0.0116,
"percent_delta": 0.033,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.226,
"after": 0.3306,
"delta": 0.1046,
"percent_delta": 0.4628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 0.4034,
"delta": 0.1034,
"percent_delta": 0.3447,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.391,
"after": 0.3953,
"delta": 0.0043,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.981,
"after": 1.4872,
"delta": 0.5062,
"percent_delta": 0.516,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.528,
"after": 4.8465,
"delta": 1.3185,
"percent_delta": 0.3737,
"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": 9,
"season": 20
}
},
{
"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.3164,
"predicted_3B": 0.0012,
"predicted_AB": 4.8465,
"predicted_AVG": 0.266,
"predicted_BB": 0.41,
"predicted_H": 1.2891,
"predicted_HBP": 0.183,
"predicted_HR": 0.0388,
"predicted_OBP": 0.3233,
"predicted_R": 0.3017,
"predicted_RBI": 0.3681,
"predicted_SLG": 0.3558,
"predicted_SO": 1.5103
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3164,
"after": 0.3164,
"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": 4.8465,
"after": 4.8465,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2933,
"after": 0.266,
"delta": -0.0273,
"percent_delta": -0.0931,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4165,
"after": 0.41,
"delta": -0.0065,
"percent_delta": -0.0156,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.358,
"after": 1.2891,
"delta": -0.0689,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.183,
"after": 0.183,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0409,
"after": 0.0388,
"delta": -0.0021,
"percent_delta": -0.0513,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3626,
"after": 0.3233,
"delta": -0.0393,
"percent_delta": -0.1084,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3306,
"after": 0.3017,
"delta": -0.0289,
"percent_delta": -0.0874,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4034,
"after": 0.3681,
"delta": -0.0353,
"percent_delta": -0.0875,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3953,
"after": 0.3558,
"delta": -0.0395,
"percent_delta": -0.0999,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4872,
"after": 1.5103,
"delta": 0.0231,
"percent_delta": 0.0155,
"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.358,
"after": 1.2891,
"delta": -0.0689,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.85), rates preserved: AVG=0.266 HR/AB=0.008",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3164,
"after": 0.0,
"delta": -0.3164,
"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": 4.8465,
"after": 5.0,
"delta": 0.1535,
"percent_delta": 0.0317,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2891,
"after": 1.0,
"delta": -0.2891,
"percent_delta": -0.2243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.183,
"after": 0.0,
"delta": -0.183,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0388,
"after": 0.0,
"delta": -0.0388,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3681,
"after": 0.0,
"delta": -0.3681,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5103,
"after": 2.0,
"delta": 0.4897,
"percent_delta": 0.3242,
"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": 1.5103,
"after": 2.0,
"delta": 0.4897,
"percent_delta": 0.3242,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.41,
"after": 0.0,
"delta": -0.41,
"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": 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": 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.3017,
"after": 0.0,
"delta": -0.3017,
"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": 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_R",
"before": 0.3017,
"after": 0.0,
"delta": -0.3017,
"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": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.2,
"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.266,
"after": 0.2,
"delta": -0.066,
"percent_delta": -0.2481,
"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.3233,
"after": 0.2,
"delta": -0.1233,
"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_SLG",
"before": 0.3558,
"after": 0.2,
"delta": -0.1558,
"percent_delta": -0.4379,
"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_SLG",
"before": 0.3558,
"after": 0.2,
"delta": -0.1558,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"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.266,
"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.3233,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3558,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.266,
"delta": 0.066,
"percent_delta": 0.33,
"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.3233,
"delta": 0.1233,
"percent_delta": 0.6163,
"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.3558,
"delta": 0.1558,
"percent_delta": 0.7789,
"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.3558,
"delta": 0.1558,
"percent_delta": 0.7789,
"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.208,
"after": 0.0,
"delta": -0.208,
"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.528,
"after": 4.0,
"delta": 0.472,
"percent_delta": 0.1338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.266,
"delta": -0.01,
"percent_delta": -0.0362,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.0,
"delta": 0.19,
"percent_delta": 0.2346,
"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.351,
"after": 0.3233,
"delta": -0.0277,
"percent_delta": -0.0789,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.226,
"after": 0.0,
"delta": -0.226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.391,
"after": 0.3558,
"delta": -0.0352,
"percent_delta": -0.09,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.981,
"after": 1.0,
"delta": 0.019,
"percent_delta": 0.0194,
"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_AB",
"before": 3.528,
"after": 4.0,
"delta": 0.472,
"percent_delta": 0.1338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"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.208 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.528 | - |
| predicted_AVG | 0.276 | - |
| predicted_BB | 0.340 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.351 | - |
| predicted_R | 0.226 | - |
| predicted_RBI | 0.300 | - |
| predicted_SLG | 0.391 | - |
| 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.316 | 0.108 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.846 | 1.318 |
| predicted_AVG | 0.293 | 0.017 |
| predicted_BB | 0.416 | 0.076 |
| predicted_H | 1.358 | 0.548 |
| predicted_HBP | 0.183 | - |
| predicted_HR | 0.041 | -0.009 |
| predicted_OBP | 0.363 | 0.012 |
| predicted_R | 0.331 | 0.105 |
| predicted_RBI | 0.403 | 0.103 |
| predicted_SLG | 0.395 | 0.004 |
| predicted_SO | 1.487 | 0.506 |
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.316 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.846 | 0.000 |
| predicted_AVG | 0.266 | -0.027 |
| predicted_BB | 0.410 | -0.007 |
| predicted_H | 1.289 | -0.069 |
| predicted_HBP | 0.183 | 0.000 |
| predicted_HR | 0.039 | -0.002 |
| predicted_OBP | 0.323 | -0.039 |
| predicted_R | 0.302 | -0.029 |
| predicted_RBI | 0.368 | -0.035 |
| predicted_SLG | 0.356 | -0.039 |
| predicted_SO | 1.510 | 0.023 |
AB rounded to 5 (raw=4.85), rates preserved: AVG=0.266 HR/AB=0.008
| 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 | 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 | 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 | 0.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.316 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.154 |
| predicted_AVG | 0.200 | -0.066 |
| predicted_BB | 0.000 | -0.410 |
| predicted_H | 1.000 | -0.289 |
| predicted_HR | 0.000 | -0.039 |
| predicted_OBP | 0.200 | -0.123 |
| predicted_R | 0.000 | -0.302 |
| predicted_RBI | 0.000 | -0.368 |
| predicted_SLG | 0.200 | -0.156 |
| predicted_SO | 2.000 | 0.490 |
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 | - | 16.000 | 6.000 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 8.000 | 0.3750 | 0.4444 | 0.5000 | 0.3750 | 0.0000 | 0.0625 | 0.0625 | 0.5000 |
| last_10 | 0.20 | 9 | - | 33.000 | 11.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 13.000 | 0.3333 | 0.3889 | 0.3939 | 0.3333 | 0.0000 | 0.0303 | 0.0303 | 0.3939 |
| season | 0.60 | 20 | - | 187.000 | 58.000 | 11.000 | 0.000 | 0.000 | 17.000 | 12.000 | 18.000 | 52.000 | 0.3102 | 0.3697 | 0.3690 | 0.3102 | 0.0000 | 0.0909 | 0.0963 | 0.2781 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4700 |
| predicted_3B | 0.0030 |
| predicted_AB | 6.7160 |
| predicted_AVG | 0.3179 |
| predicted_BB | 0.5250 |
| predicted_H | 2.1350 |
| predicted_HBP | 0.1830 |
| predicted_HR | 0.0280 |
| predicted_OBP | 0.3791 |
| predicted_R | 0.4790 |
| predicted_RBI | 0.5500 |
| predicted_SLG | 0.4014 |
| predicted_SO | 2.2050 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2080 | 0.4700 | 0.3164 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 3.5280 | 6.7160 | 4.8465 | model_form_blend |
| predicted_AVG | 0.2760 | 0.3179 | 0.2933 | model_form_blend |
| predicted_BB | 0.3400 | 0.5250 | 0.4165 | model_form_blend |
| predicted_H | 0.8100 | 2.1350 | 1.3580 | model_form_blend |
| predicted_HBP | - | 0.1830 | 0.1830 | form_only |
| predicted_HR | 0.0500 | 0.0280 | 0.0409 | model_form_blend |
| predicted_OBP | 0.3510 | 0.3791 | 0.3626 | model_form_blend |
| predicted_R | 0.2260 | 0.4790 | 0.3306 | model_form_blend |
| predicted_RBI | 0.3000 | 0.5500 | 0.4034 | model_form_blend |
| predicted_SLG | 0.3910 | 0.4014 | 0.3953 | model_form_blend |
| predicted_SO | 0.9810 | 2.2050 | 1.4872 | 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 | 53 |
| 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.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 | 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 | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 2 |
| 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 | 20260607_OAK@HOU |
| game_type | ph |
| mlbID | 703607 |
| note | Struck out for Cortes in the 6th. |
| playerID | 703607 |
| playerName | Henry Bolte |
| pos | RF |
| started | False |
| startingPosition | PH |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 27.8 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.347 |
| sl_xwoba | 0.271 |
| sl_xba | 0.21 |
| sl_xslg | 0.272 |
| sl_sweet_spot_percent | 19.1 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 53.2 |
| sl_exit_velocity_avg | 91.6 |
| sl_launch_angle_avg | 3.0 |
| sl_whiff_percent | 34.0 |
| sl_swing_percent | 51.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.316 | 0.000 | 0.000 | Hitting_2B | 0.316 | 0.000 | -0.316 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_AB | 3.844 | 4.000 | 6.000 | Hitting_AB | 3.844 | 3.000 | 0.156 | 1.000 |
| predicted_AVG | 0.243 | 0.000 | 0.167 | Hitting_AVG | 0.218 | 0.000 | -0.218 | 0.000 |
| predicted_BB | 0.489 | 0.000 | 1.000 | Hitting_BB | 0.489 | 1.000 | -0.489 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.900 | 0.000 | 1.000 | Hitting_H | 0.840 | 0.000 | -0.840 | 0.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.121 | 0.000 | -0.121 | 0.000 |
| predicted_OBP | 0.351 | 0.000 | 0.286 | Hitting_OBP | 0.308 | 0.250 | -0.308 | -0.250 |
| predicted_R | 0.502 | 0.000 | 1.000 | Hitting_R | 0.502 | 0.000 | -0.502 | 0.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.494 | 0.000 | -0.494 | 0.000 |
| predicted_SLG | 0.431 | 0.000 | 0.167 | Hitting_SLG | 0.411 | 0.000 | -0.411 | 0.000 |
| predicted_SO | 0.792 | 1.000 | 1.000 | Hitting_SO | 0.792 | 2.000 | 0.208 | -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.7920 -> 1.0000 (boost 0.2080, worse) |
| Biggest Deboost | predicted_H: 0.9000 -> 0.0000 (deboost -0.9000, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.8440 -> 6.4125 (boost 2.5685, 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 | 6 | 0 | 6 | 0 | 6 | - | predicted_RBI: 0.9820 -> 0.8962 (deboost -0.0858, 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.8962 -> 1.0000 (boost 0.1038, better) | predicted_H: 1.5070 -> 1.0000 (deboost -0.5070, worse) | AB rounded to 6 (raw=6.41), rates preserved: AVG=0.235 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6894 -> 1.0000 (boost 0.3106, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4366 -> 0.1670 (deboost -0.2696, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.4366 (boost 0.2696, better) | - | 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.316,
"predicted_3B": 0.03,
"predicted_AB": 3.844,
"predicted_AVG": 0.243,
"predicted_BB": 0.489,
"predicted_H": 0.9,
"predicted_HR": 0.15,
"predicted_OBP": 0.351,
"predicted_R": 0.502,
"predicted_RBI": 0.54,
"predicted_SLG": 0.431,
"predicted_SO": 0.792
},
"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.4423,
"predicted_3B": 0.0366,
"predicted_AB": 6.4125,
"predicted_AVG": 0.248,
"predicted_BB": 1.0546,
"predicted_H": 1.5875,
"predicted_HBP": 0.028,
"predicted_HR": 0.2732,
"predicted_OBP": 0.3576,
"predicted_R": 0.7554,
"predicted_RBI": 0.982,
"predicted_SLG": 0.4435,
"predicted_SO": 1.4062
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.316,
"after": 0.4423,
"delta": 0.1263,
"percent_delta": 0.3997,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0366,
"delta": 0.0066,
"percent_delta": 0.22,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.844,
"after": 6.4125,
"delta": 2.5685,
"percent_delta": 0.6682,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.248,
"delta": 0.005,
"percent_delta": 0.0206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.489,
"after": 1.0546,
"delta": 0.5656,
"percent_delta": 1.1566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 1.5875,
"delta": 0.6875,
"percent_delta": 0.7639,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2732,
"delta": 0.1232,
"percent_delta": 0.8213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3576,
"delta": 0.0066,
"percent_delta": 0.0188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.502,
"after": 0.7554,
"delta": 0.2534,
"percent_delta": 0.5048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.982,
"delta": 0.442,
"percent_delta": 0.8185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.431,
"after": 0.4435,
"delta": 0.0125,
"percent_delta": 0.029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.792,
"after": 1.4062,
"delta": 0.6142,
"percent_delta": 0.7755,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.844,
"after": 6.4125,
"delta": 2.5685,
"percent_delta": 0.6682,
"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.4423,
"predicted_3B": 0.0366,
"predicted_AB": 6.4125,
"predicted_AVG": 0.235,
"predicted_BB": 1.0383,
"predicted_H": 1.507,
"predicted_HBP": 0.028,
"predicted_HR": 0.259,
"predicted_OBP": 0.3416,
"predicted_R": 0.6894,
"predicted_RBI": 0.8962,
"predicted_SLG": 0.4366,
"predicted_SO": 1.428
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4423,
"after": 0.4423,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0366,
"after": 0.0366,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4125,
"after": 6.4125,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.235,
"delta": -0.013,
"percent_delta": -0.0524,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0546,
"after": 1.0383,
"delta": -0.0163,
"percent_delta": -0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5875,
"after": 1.507,
"delta": -0.0805,
"percent_delta": -0.0507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.2732,
"after": 0.259,
"delta": -0.0142,
"percent_delta": -0.052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3576,
"after": 0.3416,
"delta": -0.016,
"percent_delta": -0.0447,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7554,
"after": 0.6894,
"delta": -0.066,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.982,
"after": 0.8962,
"delta": -0.0858,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4435,
"after": 0.4366,
"delta": -0.0069,
"percent_delta": -0.0156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4062,
"after": 1.428,
"delta": 0.0218,
"percent_delta": 0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.982,
"after": 0.8962,
"delta": -0.0858,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.41), rates preserved: AVG=0.235 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.4423,
"after": 0.0,
"delta": -0.4423,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0366,
"after": 0.0,
"delta": -0.0366,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4125,
"after": 6.0,
"delta": -0.4125,
"percent_delta": -0.0643,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0383,
"after": 1.0,
"delta": -0.0383,
"percent_delta": -0.0369,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.507,
"after": 1.0,
"delta": -0.507,
"percent_delta": -0.3364,
"direction": "deboost",
"projection_effect": "worse",
"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.259,
"after": 0.0,
"delta": -0.259,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8962,
"after": 1.0,
"delta": 0.1038,
"percent_delta": 0.1158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.428,
"after": 1.0,
"delta": -0.428,
"percent_delta": -0.2997,
"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.8962,
"after": 1.0,
"delta": 0.1038,
"percent_delta": 0.1158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.507,
"after": 1.0,
"delta": -0.507,
"percent_delta": -0.3364,
"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": 6.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": 6.0,
"after": 6.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.6894,
"after": 1.0,
"delta": 0.3106,
"percent_delta": 0.4505,
"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.6894,
"after": 1.0,
"delta": 0.3106,
"percent_delta": 0.4505,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.167,
"delta": -0.068,
"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_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.3416,
"after": 0.286,
"delta": -0.0556,
"percent_delta": -0.1628,
"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.4366,
"after": 0.167,
"delta": -0.2696,
"percent_delta": -0.6175,
"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.4366,
"after": 0.167,
"delta": -0.2696,
"percent_delta": -0.6175,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.235,
"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.3416,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4366,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.167,
"after": 0.235,
"delta": 0.068,
"percent_delta": 0.4073,
"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.286,
"after": 0.3416,
"delta": 0.0556,
"percent_delta": 0.1944,
"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.167,
"after": 0.4366,
"delta": 0.2696,
"percent_delta": 1.6142,
"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.167,
"after": 0.4366,
"delta": 0.2696,
"percent_delta": 1.6142,
"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.316,
"after": 0.0,
"delta": -0.316,
"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.844,
"after": 4.0,
"delta": 0.156,
"percent_delta": 0.0406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.235,
"delta": -0.008,
"percent_delta": -0.0329,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.489,
"after": 0.0,
"delta": -0.489,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 0.0,
"delta": -0.9,
"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.351,
"after": 0.3416,
"delta": -0.0094,
"percent_delta": -0.0268,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.502,
"after": 0.0,
"delta": -0.502,
"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.431,
"after": 0.4366,
"delta": 0.0056,
"percent_delta": 0.013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.792,
"after": 1.0,
"delta": 0.208,
"percent_delta": 0.2626,
"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.792,
"after": 1.0,
"delta": 0.208,
"percent_delta": 0.2626,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.9,
"after": 0.0,
"delta": -0.9,
"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.316 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.844 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.489 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.351 | - |
| predicted_R | 0.502 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.431 | - |
| predicted_SO | 0.792 | - |
Final model 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.442 | 0.126 |
| predicted_3B | 0.037 | 0.007 |
| predicted_AB | 6.412 | 2.568 |
| predicted_AVG | 0.248 | 0.005 |
| predicted_BB | 1.055 | 0.566 |
| predicted_H | 1.587 | 0.687 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.273 | 0.123 |
| predicted_OBP | 0.358 | 0.007 |
| predicted_R | 0.755 | 0.253 |
| predicted_RBI | 0.982 | 0.442 |
| predicted_SLG | 0.444 | 0.013 |
| predicted_SO | 1.406 | 0.614 |
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.442 | 0.000 |
| predicted_3B | 0.037 | 0.000 |
| predicted_AB | 6.412 | 0.000 |
| predicted_AVG | 0.235 | -0.013 |
| predicted_BB | 1.038 | -0.016 |
| predicted_H | 1.507 | -0.081 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.259 | -0.014 |
| predicted_OBP | 0.342 | -0.016 |
| predicted_R | 0.689 | -0.066 |
| predicted_RBI | 0.896 | -0.086 |
| predicted_SLG | 0.437 | -0.007 |
| predicted_SO | 1.428 | 0.022 |
AB rounded to 6 (raw=6.41), rates preserved: AVG=0.235 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.442 |
| predicted_3B | 0.000 | -0.037 |
| predicted_AB | 6.000 | -0.412 |
| predicted_AVG | 0.167 | -0.068 |
| predicted_BB | 1.000 | -0.038 |
| predicted_H | 1.000 | -0.507 |
| predicted_HR | 0.000 | -0.259 |
| predicted_OBP | 0.286 | -0.056 |
| predicted_R | 1.000 | 0.311 |
| predicted_RBI | 1.000 | 0.104 |
| predicted_SLG | 0.167 | -0.270 |
| predicted_SO | 1.000 | -0.428 |
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 | -2.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 | - | 16.000 | 4.000 | 0.000 | 0.000 | 1.000 | 4.000 | 1.000 | 4.000 | 5.000 | 0.2500 | 0.4000 | 0.4375 | 0.2500 | 0.0625 | 0.2500 | 0.2500 | 0.3125 |
| last_10 | 0.20 | 10 | - | 30.000 | 11.000 | 2.000 | 0.000 | 2.000 | 5.000 | 3.000 | 9.000 | 6.000 | 0.3667 | 0.5128 | 0.6333 | 0.3667 | 0.0667 | 0.1667 | 0.3000 | 0.2000 |
| season | 0.60 | 62 | - | 888.000 | 194.000 | 73.000 | 7.000 | 28.000 | 114.000 | 116.000 | 113.000 | 183.000 | 0.2185 | 0.3082 | 0.4110 | 0.2185 | 0.0315 | 0.1284 | 0.1273 | 0.2061 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6020 |
| predicted_3B | 0.0450 |
| predicted_AB | 9.6610 |
| predicted_AVG | 0.2543 |
| predicted_BB | 1.7700 |
| predicted_H | 2.4570 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.4290 |
| predicted_OBP | 0.3659 |
| predicted_R | 1.0760 |
| predicted_RBI | 1.5410 |
| predicted_SLG | 0.4592 |
| predicted_SO | 2.1830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3160 | 0.6020 | 0.4423 | model_form_blend |
| predicted_3B | 0.0300 | 0.0450 | 0.0366 | model_form_blend |
| predicted_AB | 3.8440 | 9.6610 | 6.4125 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2543 | 0.2480 | model_form_blend |
| predicted_BB | 0.4890 | 1.7700 | 1.0546 | model_form_blend |
| predicted_H | 0.9000 | 2.4570 | 1.5875 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1500 | 0.4290 | 0.2732 | model_form_blend |
| predicted_OBP | 0.3510 | 0.3659 | 0.3576 | model_form_blend |
| predicted_R | 0.5020 | 1.0760 | 0.7554 | model_form_blend |
| predicted_RBI | 0.5400 | 1.5410 | 0.9820 | model_form_blend |
| predicted_SLG | 0.4310 | 0.4592 | 0.4435 | model_form_blend |
| predicted_SO | 0.7920 | 2.1830 | 1.4062 | 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 | 231 |
| Season rows before report date | 231 |
| Report year | 2026 |
| Profile rows used | 231 |
| 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.218 |
| 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 | 2 |
| 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 | LF |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 691016 |
| playerID | 691016 |
| playerName | Tyler Soderstrom |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.8 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.328 |
| sl_xwoba | 0.33 |
| sl_xba | 0.246 |
| sl_xslg | 0.418 |
| sl_sweet_spot_percent | 28.3 |
| sl_barrel_batted_rate | 11.2 |
| sl_hard_hit_percent | 43.9 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 13.3 |
| sl_whiff_percent | 21.6 |
| 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.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.000 | 3.000 | 3.000 | Hitting_AB | 2.062 | 4.000 | 0.938 | -1.000 |
| predicted_AVG | 0.277 | 0.667 | 0.333 | Hitting_AVG | 0.182 | 0.250 | 0.485 | 0.417 |
| predicted_BB | 0.091 | 0.000 | 0.000 | Hitting_BB | 0.062 | 0.000 | -0.062 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.250 | 0.000 | -0.250 | 0.000 |
| predicted_H | 0.160 | 2.000 | 1.000 | Hitting_H | 0.375 | 1.000 | 1.625 | 1.000 |
| predicted_HR | 0.020 | 1.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_OBP | 0.277 | 0.667 | 0.333 | Hitting_OBP | 0.206 | 0.250 | 0.461 | 0.417 |
| predicted_R | 0.273 | 1.000 | 0.000 | Hitting_R | 0.188 | 1.000 | 0.812 | 0.000 |
| predicted_RBI | 0.110 | 2.000 | 0.000 | Hitting_RBI | 0.312 | 0.000 | 1.688 | 2.000 |
| predicted_SLG | 0.313 | 1.667 | 0.333 | Hitting_SLG | 0.182 | 0.250 | 1.485 | 1.417 |
| predicted_SO | 1.091 | 0.000 | 1.000 | Hitting_SO | 0.750 | 1.000 | -0.750 | -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_RBI: 0.1100 -> 2.0000 (boost 1.8900, better) |
| Biggest Deboost | predicted_SO: 1.0910 -> 0.0000 (deboost -1.0910, 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 | 4 | 3 | 4 | 3 | predicted_AB: 3.0000 -> 3.2785 (boost 0.2785, better) | predicted_AVG: 0.2770 -> 0.2555 (deboost -0.0215, 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.3035 -> 0.1438 (deboost -0.1597, 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 | 1 | 4 | - | predicted_H: 0.3450 -> 0.0000 (deboost -0.3450, worse) | AB rounded to 3 (raw=3.28), rates preserved: AVG=0.105 HR/AB=0.010 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3065 -> 0.0000 (deboost -0.3065, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1052 -> 0.3330 (boost 0.2278, 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 | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1052 (deboost -0.2278, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "675961",
"player_name": "Alika Williams",
"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.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.277,
"predicted_BB": 0.091,
"predicted_H": 0.16,
"predicted_HR": 0.02,
"predicted_OBP": 0.277,
"predicted_R": 0.273,
"predicted_RBI": 0.11,
"predicted_SLG": 0.313,
"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.0278,
"predicted_3B": 0.0022,
"predicted_AB": 3.2785,
"predicted_AVG": 0.2555,
"predicted_BB": 0.1314,
"predicted_H": 0.3634,
"predicted_HBP": 0.017,
"predicted_HR": 0.0331,
"predicted_OBP": 0.2699,
"predicted_R": 0.3359,
"predicted_RBI": 0.2361,
"predicted_SLG": 0.3035,
"predicted_SO": 1.1264
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0278,
"delta": 0.0278,
"percent_delta": null,
"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": 3.0,
"after": 3.2785,
"delta": 0.2785,
"percent_delta": 0.0928,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.2555,
"delta": -0.0215,
"percent_delta": -0.0776,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.091,
"after": 0.1314,
"delta": 0.0404,
"percent_delta": 0.444,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.16,
"after": 0.3634,
"delta": 0.2034,
"percent_delta": 1.2712,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.02,
"after": 0.0331,
"delta": 0.0131,
"percent_delta": 0.655,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.277,
"after": 0.2699,
"delta": -0.0071,
"percent_delta": -0.0256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.273,
"after": 0.3359,
"delta": 0.0629,
"percent_delta": 0.2304,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.11,
"after": 0.2361,
"delta": 0.1261,
"percent_delta": 1.1464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.313,
"after": 0.3035,
"delta": -0.0095,
"percent_delta": -0.0304,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.091,
"after": 1.1264,
"delta": 0.0354,
"percent_delta": 0.0324,
"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.0,
"after": 3.2785,
"delta": 0.2785,
"percent_delta": 0.0928,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.2555,
"delta": -0.0215,
"percent_delta": -0.0776,
"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": 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.0278,
"predicted_3B": 0.0022,
"predicted_AB": 3.2785,
"predicted_AVG": 0.1052,
"predicted_BB": 0.1294,
"predicted_H": 0.345,
"predicted_HBP": 0.017,
"predicted_HR": 0.0314,
"predicted_OBP": 0.1392,
"predicted_R": 0.3065,
"predicted_RBI": 0.2155,
"predicted_SLG": 0.1438,
"predicted_SO": 1.1439
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0278,
"after": 0.0278,
"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": 3.2785,
"after": 3.2785,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2555,
"after": 0.1052,
"delta": -0.1503,
"percent_delta": -0.5883,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1314,
"after": 0.1294,
"delta": -0.002,
"percent_delta": -0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3634,
"after": 0.345,
"delta": -0.0184,
"percent_delta": -0.0506,
"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.0331,
"after": 0.0314,
"delta": -0.0017,
"percent_delta": -0.0514,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2699,
"after": 0.1392,
"delta": -0.1307,
"percent_delta": -0.4843,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3359,
"after": 0.3065,
"delta": -0.0294,
"percent_delta": -0.0875,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2361,
"after": 0.2155,
"delta": -0.0206,
"percent_delta": -0.0873,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3035,
"after": 0.1438,
"delta": -0.1597,
"percent_delta": -0.5262,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1264,
"after": 1.1439,
"delta": 0.0175,
"percent_delta": 0.0155,
"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.3035,
"after": 0.1438,
"delta": -0.1597,
"percent_delta": -0.5262,
"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.105 HR/AB=0.010",
"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.0278,
"after": 0.0,
"delta": -0.0278,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 3.2785,
"after": 3.0,
"delta": -0.2785,
"percent_delta": -0.0849,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1294,
"after": 0.0,
"delta": -0.1294,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.345,
"after": 0.0,
"delta": -0.345,
"percent_delta": -1.0,
"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.0314,
"after": 0.0,
"delta": -0.0314,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2155,
"after": 0.0,
"delta": -0.2155,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1439,
"after": 1.0,
"delta": -0.1439,
"percent_delta": -0.1258,
"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_H",
"before": 0.345,
"after": 0.0,
"delta": -0.345,
"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.3065,
"after": 0.0,
"delta": -0.3065,
"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.3065,
"after": 0.0,
"delta": -0.3065,
"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.1052,
"after": 0.333,
"delta": 0.2278,
"percent_delta": 2.1654,
"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.1392,
"after": 0.333,
"delta": 0.1938,
"percent_delta": 1.3922,
"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.1438,
"after": 0.333,
"delta": 0.1892,
"percent_delta": 1.3157,
"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.1052,
"after": 0.333,
"delta": 0.2278,
"percent_delta": 2.1654,
"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": 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": 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": 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": 3.0,
"predicted_AVG": 0.1052,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.1392,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.1438,
"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": 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.1052,
"delta": -0.2278,
"percent_delta": -0.684,
"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.1392,
"delta": -0.1938,
"percent_delta": -0.582,
"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.1438,
"delta": -0.1892,
"percent_delta": -0.5683,
"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.1052,
"delta": -0.2278,
"percent_delta": -0.684,
"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.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.1052,
"delta": -0.1718,
"percent_delta": -0.6202,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.091,
"after": 0.0,
"delta": -0.091,
"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.02,
"after": 1.0,
"delta": 0.98,
"percent_delta": 49.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.277,
"after": 0.1392,
"delta": -0.1378,
"percent_delta": -0.4975,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.273,
"after": 1.0,
"delta": 0.727,
"percent_delta": 2.663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.11,
"after": 2.0,
"delta": 1.89,
"percent_delta": 17.1818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.313,
"after": 0.1438,
"delta": -0.1692,
"percent_delta": -0.5406,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.091,
"after": 0.0,
"delta": -1.091,
"percent_delta": -1.0,
"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_RBI",
"before": 0.11,
"after": 2.0,
"delta": 1.89,
"percent_delta": 17.1818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.091,
"after": 0.0,
"delta": -1.091,
"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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.000 | - |
| predicted_AVG | 0.277 | - |
| predicted_BB | 0.091 | - |
| predicted_H | 0.160 | - |
| predicted_HR | 0.020 | - |
| predicted_OBP | 0.277 | - |
| predicted_R | 0.273 | - |
| predicted_RBI | 0.110 | - |
| predicted_SLG | 0.313 | - |
| 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.028 | 0.028 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.279 | 0.279 |
| predicted_AVG | 0.256 | -0.022 |
| predicted_BB | 0.131 | 0.040 |
| predicted_H | 0.363 | 0.203 |
| predicted_HBP | 0.017 | - |
| predicted_HR | 0.033 | 0.013 |
| predicted_OBP | 0.270 | -0.007 |
| predicted_R | 0.336 | 0.063 |
| predicted_RBI | 0.236 | 0.126 |
| predicted_SLG | 0.303 | -0.010 |
| predicted_SO | 1.126 | 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.028 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.279 | 0.000 |
| predicted_AVG | 0.105 | -0.150 |
| predicted_BB | 0.129 | -0.002 |
| predicted_H | 0.345 | -0.018 |
| predicted_HBP | 0.017 | 0.000 |
| predicted_HR | 0.031 | -0.002 |
| predicted_OBP | 0.139 | -0.131 |
| predicted_R | 0.306 | -0.029 |
| predicted_RBI | 0.215 | -0.021 |
| predicted_SLG | 0.144 | -0.160 |
| predicted_SO | 1.144 | 0.017 |
AB rounded to 3 (raw=3.28), rates preserved: AVG=0.105 HR/AB=0.010
| 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.028 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.279 |
| predicted_AVG | 0.333 | 0.228 |
| predicted_BB | 0.000 | -0.129 |
| predicted_H | 1.000 | 0.655 |
| predicted_HR | 0.000 | -0.031 |
| predicted_OBP | 0.333 | 0.194 |
| predicted_R | 0.000 | -0.306 |
| predicted_RBI | 0.000 | -0.215 |
| predicted_SLG | 0.333 | 0.189 |
| predicted_SO | 1.000 | -0.144 |
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 | 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 | - | 15.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 7.000 | 0.1333 | 0.1875 | 0.1333 | 0.1333 | 0.0000 | 0.0667 | 0.0667 | 0.4667 |
| last_10 | 0.20 | 7 | - | 32.000 | 6.000 | 0.000 | 0.000 | 0.000 | 5.000 | 3.000 | 1.000 | 12.000 | 0.1875 | 0.2121 | 0.1875 | 0.1875 | 0.0000 | 0.1562 | 0.0312 | 0.3750 |
| season | 0.60 | 8 | - | 33.000 | 6.000 | 0.000 | 0.000 | 0.000 | 5.000 | 3.000 | 1.000 | 12.000 | 0.1818 | 0.2059 | 0.1818 | 0.1818 | 0.0000 | 0.1515 | 0.0303 | 0.3636 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0890 |
| predicted_3B | 0.0070 |
| predicted_AB | 3.8900 |
| predicted_AVG | 0.2083 |
| predicted_BB | 0.2200 |
| predicted_H | 0.8100 |
| predicted_HBP | 0.0170 |
| predicted_HR | 0.0620 |
| predicted_OBP | 0.2544 |
| predicted_R | 0.4740 |
| predicted_RBI | 0.5130 |
| predicted_SLG | 0.2825 |
| predicted_SO | 1.2040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0890 | 0.0278 | model_form_blend |
| predicted_3B | 0.0000 | 0.0070 | 0.0022 | model_form_blend |
| predicted_AB | 3.0000 | 3.8900 | 3.2785 | model_form_blend |
| predicted_AVG | 0.2770 | 0.2083 | 0.2555 | model_form_blend |
| predicted_BB | 0.0910 | 0.2200 | 0.1314 | model_form_blend |
| predicted_H | 0.1600 | 0.8100 | 0.3634 | model_form_blend |
| predicted_HBP | - | 0.0170 | 0.0170 | form_only |
| predicted_HR | 0.0200 | 0.0620 | 0.0331 | model_form_blend |
| predicted_OBP | 0.2770 | 0.2544 | 0.2699 | model_form_blend |
| predicted_R | 0.2730 | 0.4740 | 0.3359 | model_form_blend |
| predicted_RBI | 0.1100 | 0.5130 | 0.2361 | model_form_blend |
| predicted_SLG | 0.3130 | 0.2825 | 0.3035 | model_form_blend |
| predicted_SO | 1.0910 | 1.2040 | 1.1264 | 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 | 16 |
| Season rows before report date | 16 |
| 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 | 3 |
| AB | 3 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| 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.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 | 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 | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 675961 |
| playerID | 675961 |
| playerName | Alika Williams |
| pos | 2B |
| started | True |
| startingPosition | SS |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 40.9 |
| sl_bb_percent | 4.5 |
| sl_woba | 0.154 |
| sl_xwoba | 0.158 |
| sl_xba | 0.137 |
| sl_xslg | 0.166 |
| sl_sweet_spot_percent | 16.7 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 41.7 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 34.9 |
| 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_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.615 | 1.000 | -0.615 | 0.000 |
| predicted_ER | 5.000 | 5.000 | 5.000 | Pitching_ER | 2.615 | 4.000 | 2.385 | 1.000 |
| predicted_H | 7.000 | 7.000 | 7.000 | Pitching_H | 5.077 | 7.000 | 1.923 | 0.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 5.277 | 3.200 | -0.177 | 1.900 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 4.615 | 3.000 | -1.615 | 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: 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": "605488",
"player_name": "Jeffrey Springs",
"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": 1.0,
"predicted_ER": 5.0,
"predicted_H": 7.0,
"predicted_HR": 1.0,
"predicted_IP": 5.3333,
"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": 1.0,
"predicted_ER": 5.0,
"predicted_H": 7.0,
"predicted_HR": 1.0,
"predicted_IP": 5.1,
"predicted_R": 5.0,
"predicted_SO": 3.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": 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": 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": 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.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": 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": 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": 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.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 | 5.000 | - |
| predicted_H | 7.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.333 | - |
| 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 | 26.000 | 15.000 | 28.000 | 9.000 | 21.000 | 7.000 | 5.1923 | 1.4231 | 0.5769 | 1.0769 | 0.3462 | 0.8077 | 0.2692 |
| last_10 | 0.35 | 10 | 51.200 | 31.000 | 58.000 | 15.000 | 45.000 | 14.000 | 5.4000 | 1.4129 | 0.6000 | 1.1226 | 0.2903 | 0.8710 | 0.2710 |
| season | 0.20 | 13 | 70.000 | 34.000 | 66.000 | 21.000 | 60.000 | 14.000 | 4.3714 | 1.2429 | 0.4857 | 0.9429 | 0.3000 | 0.8571 | 0.2000 |
| Metric | Value |
|---|---|
| predicted_BB | 1.7620 |
| predicted_ER | 2.9010 |
| predicted_ERA | 4.8960 |
| predicted_H | 5.5250 |
| predicted_HR | 1.1920 |
| predicted_IP | 5.1000 |
| predicted_SO | 4.6190 |
| predicted_WHIP | 1.3664 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.7620 | 1.4059 | model_form_blend |
| predicted_ER | 5.0000 | 2.9010 | 3.8820 | model_form_blend |
| predicted_ERA | - | 4.8960 | 4.8960 | form_only |
| predicted_H | 7.0000 | 5.5250 | 6.2144 | model_form_blend |
| predicted_HR | 1.0000 | 1.1920 | 1.1023 | model_form_blend |
| predicted_IP | 5.1000 | 5.1000 | 5.1000 | model_form_blend |
| predicted_SO | 3.0000 | 4.6190 | 3.8623 | model_form_blend |
| predicted_WHIP | - | 1.3664 | 1.3664 | 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.1 |
| H | 7 |
| R | 5 |
| ER | 5 |
| BB | 1 |
| SO | 3 |
| HR | 1 |
| BF | 24 |
| Pitches | 92 |
| 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 | 1 |
| 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.37 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 3 |
| Pitching_H | 7 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 3.2 |
| Pitching_Pitches | 86 |
| Pitching_R | 4 |
| Pitching_SO | 3 |
| Pitching_Strikes | 54 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260603_OAK@CHC |
| game_type | full |
| mlbID | 605488 |
| playerID | 605488 |
| playerName | Jeffrey Springs |
| pos | P |
| started | True |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-03 |
| sl_k_percent | 20.3 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.334 |
| sl_xwoba | 0.315 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 9.4 |
| sl_hard_hit_percent | 36.3 |
| sl_whiff_percent | 22.8 |
| sl_swing_percent | 47.2 |
| sl_avg_best_speed | 76.724293714 |
| sl_avg_hyper_speed | 93.460652571 |
| 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.242 | 0.000 | -0.242 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.697 | 1.000 | -0.697 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.718 | 1.000 | 0.282 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.030 | 1.000 | -0.030 | 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": "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": 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 | 6.000 | 0.000 | 0.0000 | 0.6429 | 0.0000 | 0.4286 | 0.2143 | 1.2857 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 2.000 | 5.000 | 5.000 | 11.000 | 0.000 | 2.0000 | 1.1111 | 0.2222 | 0.5556 | 0.5556 | 1.2222 | 0.0000 |
| season | 0.20 | 33 | 30.000 | 8.000 | 23.000 | 22.000 | 34.000 | 2.000 | 2.4000 | 1.5000 | 0.2667 | 0.7667 | 0.7333 | 1.1333 | 0.0667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4040 |
| predicted_ER | 0.2930 |
| predicted_ERA | 2.6370 |
| predicted_H | 0.7310 |
| predicted_HR | 0.0710 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0960 |
| predicted_WHIP | 1.1355 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4040 | 0.1845 | model_form_blend |
| predicted_ER | 0.0000 | 0.2930 | 0.1338 | model_form_blend |
| predicted_ERA | - | 2.6370 | 2.6370 | form_only |
| predicted_H | 0.0000 | 0.7310 | 0.3338 | model_form_blend |
| predicted_HR | 0.0000 | 0.0710 | 0.0324 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0960 | 1.0438 | model_form_blend |
| predicted_WHIP | - | 1.1355 | 1.1355 | 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 | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| 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 | 2.40 |
| 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 | 16 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 663687 |
| playerID | 663687 |
| playerName | Hogan Harris |
| pos | P |
| started | False |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.8 |
| sl_bb_percent | 16.1 |
| sl_woba | 0.296 |
| sl_xwoba | 0.288 |
| sl_sweet_spot_percent | 22.8 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 26.6 |
| sl_whiff_percent | 25.9 |
| sl_swing_percent | 42.2 |
| sl_avg_best_speed | 73.939107692 |
| sl_avg_hyper_speed | 92.339762949 |
| 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.276 | 0.000 | -0.276 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.517 | 0.000 | -0.517 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.966 | 0.000 | -0.966 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.838 | 1.000 | 0.162 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.000 | 2.000 | -1.000 | -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": 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 | 4.200 | 0.000 | 1.000 | 1.000 | 5.000 | 0.000 | 0.0000 | 0.4286 | 0.0000 | 0.2143 | 0.2143 | 1.0714 | 0.0000 |
| last_10 | 0.35 | 10 | 10.200 | 0.000 | 4.000 | 2.000 | 11.000 | 0.000 | 0.0000 | 0.5625 | 0.0000 | 0.3750 | 0.1875 | 1.0312 | 0.0000 |
| season | 0.20 | 29 | 27.100 | 15.000 | 28.000 | 8.000 | 29.000 | 2.000 | 4.9390 | 1.3171 | 0.5488 | 1.0244 | 0.2927 | 1.0610 | 0.0732 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2900 |
| predicted_ER | 0.2900 |
| predicted_ERA | 2.6111 |
| predicted_H | 0.6850 |
| predicted_HR | 0.0750 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9970 |
| predicted_WHIP | 0.9748 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2900 | 0.1296 | model_form_blend |
| predicted_ER | 0.0000 | 0.2900 | 0.1296 | model_form_blend |
| predicted_ERA | - | 2.6111 | 2.6111 | form_only |
| predicted_H | 0.0000 | 0.6850 | 0.3061 | model_form_blend |
| predicted_HR | 0.0000 | 0.0750 | 0.0335 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9970 | 0.4455 | model_form_blend |
| predicted_WHIP | - | 0.9748 | 0.9748 | 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 | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| 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 | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.94 |
| 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 | 16 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260607_OAK@HOU |
| 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-07 |
| sl_k_percent | 25.0 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.304 |
| sl_xwoba | 0.319 |
| sl_sweet_spot_percent | 41.0 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 30.8 |
| sl_whiff_percent | 28.6 |
| sl_swing_percent | 47.2 |
| sl_avg_best_speed | 76.222535897 |
| sl_avg_hyper_speed | 92.787236026 |
| 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.517 | 0.000 | -0.517 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.379 | 2.000 | -0.379 | -2.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.517 | 2.000 | 0.483 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.821 | 1.000 | 0.179 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.793 | 0.000 | 0.207 | 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": "605130",
"player_name": "Scott Barlow",
"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": 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 | 3.200 | 3.000 | 4.000 | 5.000 | 2.000 | 2.000 | 7.3636 | 2.4545 | 0.8182 | 1.0909 | 1.3636 | 0.5454 | 0.5454 |
| last_10 | 0.35 | 10 | 8.200 | 4.000 | 7.000 | 6.000 | 5.000 | 2.000 | 4.1538 | 1.5000 | 0.4615 | 0.8077 | 0.6923 | 0.5769 | 0.2308 |
| season | 0.20 | 28 | 28.000 | 7.000 | 13.000 | 13.000 | 23.000 | 3.000 | 2.2500 | 0.9286 | 0.2500 | 0.4643 | 0.4643 | 0.8214 | 0.1071 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6180 |
| predicted_ER | 0.4930 |
| predicted_ERA | 4.8119 |
| predicted_H | 0.8380 |
| predicted_HR | 0.2290 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7050 |
| predicted_WHIP | 1.5810 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.6180 | 0.2777 | model_form_blend |
| predicted_ER | 0.0000 | 0.4930 | 0.2215 | model_form_blend |
| predicted_ERA | - | 4.8119 | 4.8119 | form_only |
| predicted_H | 1.0000 | 0.8380 | 0.9272 | model_form_blend |
| predicted_HR | 0.0000 | 0.2290 | 0.1029 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.7050 | 0.8674 | model_form_blend |
| predicted_WHIP | - | 1.5810 | 1.5810 | 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 | 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 | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 3.54 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 3 |
| Pitching_H | 2 |
| 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 | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260604_OAK@CHC |
| game_type | full |
| mlbID | 605130 |
| playerID | 605130 |
| playerName | Scott Barlow |
| pos | P |
| started | False |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-04 |
| sl_k_percent | 19.2 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.288 |
| sl_xwoba | 0.315 |
| sl_sweet_spot_percent | 28.9 |
| sl_barrel_batted_rate | 7.9 |
| sl_hard_hit_percent | 31.6 |
| sl_whiff_percent | 34.6 |
| sl_swing_percent | 42.0 |
| sl_avg_best_speed | 77.489271316 |
| sl_avg_hyper_speed | 92.940513289 |
| 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.226 | 0.000 | -0.226 | 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.774 | 0.000 | -0.774 | 0.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.839 | 0.200 | -0.639 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.903 | 1.000 | -0.903 | -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": "686993",
"player_name": "Justin Sterner",
"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": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"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.2,
"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.6667,
"after": 0.2,
"delta": -0.4667,
"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.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": 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.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 | 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 | 0.000 | 0.000 | 0.000 | 2.000 | 0.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.4286 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 1.000 | 1.000 | 0.000 | 5.000 | 1.000 | 0.9643 | 0.1071 | 0.1071 | 0.1071 | 0.0000 | 0.5357 | 0.1071 |
| season | 0.20 | 31 | 30.200 | 11.000 | 24.000 | 7.000 | 28.000 | 4.000 | 3.2283 | 1.0109 | 0.3587 | 0.7826 | 0.2283 | 0.9130 | 0.1304 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1610 |
| predicted_ER | 0.2370 |
| predicted_ERA | 2.5120 |
| predicted_H | 0.4580 |
| predicted_HR | 0.0830 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.6210 |
| predicted_WHIP | 0.7292 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1610 | 0.0739 | model_form_blend |
| predicted_ER | 0.0000 | 0.2370 | 0.1088 | model_form_blend |
| predicted_ERA | - | 2.5120 | 2.5120 | form_only |
| predicted_H | 0.0000 | 0.4580 | 0.2102 | model_form_blend |
| predicted_HR | 0.0000 | 0.0830 | 0.0381 | model_form_blend |
| predicted_IP | 0.2000 | 1.0000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.6210 | 0.2850 | model_form_blend |
| predicted_WHIP | - | 0.7292 | 0.7292 | 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 | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| 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 | 2 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.23 |
| 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 | 16 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260607_OAK@HOU |
| game_type | full |
| mlbID | 686993 |
| playerID | 686993 |
| playerName | Justin Sterner |
| pos | P |
| started | False |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.0 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.263 |
| sl_xwoba | 0.247 |
| sl_sweet_spot_percent | 27.6 |
| sl_barrel_batted_rate | 5.7 |
| sl_hard_hit_percent | 44.8 |
| sl_whiff_percent | 29.5 |
| sl_swing_percent | 53.0 |
| sl_avg_best_speed | 79.481886098 |
| sl_avg_hyper_speed | 94.639766585 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | NYY 2 - 1 CLE | NYY | 0.553 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | NYY 2 - 1 CLE | NYY | - | 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.6000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5532 |
| 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.578 | 3.753 | - | Base ML historical model prediction |
| 2 | variance_applied | 4 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 2 | 1 | 0.5532 | 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.6262762081784388,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.20341375464684025,
"confidence": 0.84052,
"factors": {
"environmental": 1.02,
"pitcher_form": 1.4520000000000002,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.4810400000000001
},
"prediction": "low_scoring",
"expected_total_runs": 3,
"pre_simulation_expected_total_runs": 6.6,
"low_score_model_expected_total_runs": 6.6,
"final_simulation_total_runs": 3,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 132,
"near_bucket_sample_size": 132,
"medium_bucket_sample_size": 138,
"wide_bucket_sample_size": 143,
"global_sample_size": 143,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5682,
"bayesian_hit_rate": 0.56,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.88,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5578,
"calibrated_pick_probability": 0.5532,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "CLE",
"games": 67,
"wins": 37,
"losses": 30,
"win_pct": 0.5522388059701493,
"runs_scored": 272,
"runs_allowed": 271,
"run_differential": 1,
"run_differential_per_game": 0.014925373134328358,
"available": true
},
"away": {
"team": "NYY",
"games": 64,
"wins": 38,
"losses": 26,
"win_pct": 0.59375,
"runs_scored": 324,
"runs_allowed": 228,
"run_differential": 96,
"run_differential_per_game": 1.5,
"available": true
},
"run_differential_edge_per_game": -1.4851,
"win_pct_edge": -0.0415,
"quality_edge": -1.5473,
"margin_adjustment": -0.6499,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 1.371,
"home_runs": 0.69,
"home_win_probability": 0.4422
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "NYY",
"guardrail_predicted_team": "NYY",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "NYY",
"output_opponent_team": "CLE",
"final_score_winner": "NYY",
"pre_simulation_winner": "NYY",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "NYY 2 - 1 CLE",
"winner": "NYY"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "NYY 2 - 1 CLE",
"winner": "NYY"
},
"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": "CLE",
"games": 67,
"wins": 37,
"losses": 30,
"win_pct": 0.5522388059701493,
"runs_scored": 272,
"runs_allowed": 271,
"run_differential": 1,
"run_differential_per_game": 0.014925373134328358,
"available": true
},
"away": {
"team": "NYY",
"games": 64,
"wins": 38,
"losses": 26,
"win_pct": 0.59375,
"runs_scored": 324,
"runs_allowed": 228,
"run_differential": 96,
"run_differential_per_game": 1.5,
"available": true
}
}
}{
"applied": false,
"raw_margin": -0.6806,
"final_margin": -0.6806,
"margin_cap": 4.25,
"season_quality_edge": 1.5473,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.553226,
"final_confidence": 0.553226,
"confidence_cap": 0.66,
"score_gap": 0.6806,
"calibration_sample_size": 132,
"calibration_empirical_hit_rate": 0.5682,
"calibration_bayesian_hit_rate": 0.56,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.5473,
"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": 2,
"home_runs": 1,
"score_text": "NYY 2 - 1 CLE",
"winner": "NYY"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "NYY 2 - 1 CLE",
"winner": "NYY"
},
"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.553226,
"home_win_probability": 0.446774,
"away_win_probability": 0.553226,
"predicted_score_text": "NYY 2 - 1 CLE",
"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": "NYY",
"original_runs": 2,
"run_delta": 0.0244,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 54.0,
"quality": 0.21608814643854227,
"contact": 0.1377040583551026,
"power": 0.23142865843226781,
"discipline": 0.07316835124801743,
"xwoba": 0.3243888888888889,
"recent_xwoba": 0.3243888888888889,
"barrel": 8.596296296296297,
"ab_hard_contact": 0.0012786360174901696,
"ab_bat_speed": 69.45106327197823,
"ab_strikeout_rate": 0.2444865412988504,
"available_players": 9,
"top_players": [
{
"player_id": "700250",
"player_name": "Ben Rice",
"position": "1B",
"weight": 7.0,
"quality": 1.1962733764779276,
"contact": 1.3991932297302152,
"power": 1.757803539472706,
"discipline": 0.41329906777525827,
"xwoba": 0.3960000000000001,
"recent_xwoba": 0.396,
"barrel": 16.7,
"ab_hard_contact": 0.7774041227874554,
"ab_bat_speed": 70.94105952380953,
"ab_strikeout_rate": 0.23469387755102042,
"available": 1.0
},
{
"player_id": "676609",
"player_name": "José Caballero",
"position": "SS",
"weight": 6.0,
"quality": -0.6757795661360335,
"contact": -0.8546767353059581,
"power": -1.1244938906151263,
"discipline": -0.35977160493827165,
"xwoba": 0.284,
"recent_xwoba": 0.284,
"barrel": 2.9,
"ab_hard_contact": -1.278830193254913,
"ab_bat_speed": 65.39745987654321,
"ab_strikeout_rate": 0.1774074074074074,
"available": 1.0
},
{
"player_id": "641355",
"player_name": "Cody Bellinger",
"position": "LF",
"weight": 7.0,
"quality": 0.852815540411462,
"contact": 1.1121657239533007,
"power": 0.5357921497157613,
"discipline": 1.2531516754850087,
"xwoba": 0.377,
"recent_xwoba": 0.377,
"barrel": 8.7,
"ab_hard_contact": 0.7718429943152317,
"ab_bat_speed": 69.28407278806584,
"ab_strikeout_rate": 0.13055555555555556,
"available": 1.0
},
{
"player_id": "663757",
"player_name": "Trent Grisham",
"position": "CF",
"weight": 6.0,
"quality": 0.6730951153717375,
"contact": 0.6236221099966069,
"power": 0.7419678923675443,
"discipline": 1.1582604523290794,
"xwoba": 0.353,
"recent_xwoba": 0.353,
"barrel": 12.4,
"ab_hard_contact": -0.011689771696728246,
"ab_bat_speed": 67.3272961406785,
"ab_strikeout_rate": 0.20980392156862743,
"available": 1.0
},
{
"player_id": "502671",
"player_name": "Paul Goldschmidt",
"position": "DH",
"weight": 6.0,
"quality": 0.30110086393096663,
"contact": 0.7444442692102932,
"power": 0.7944228853704106,
"discipline": 0.06961199294532627,
"xwoba": 0.369,
"recent_xwoba": 0.369,
"barrel": 11.8,
"ab_hard_contact": 0.3014100883605906,
"ab_bat_speed": 69.01389880952381,
"ab_strikeout_rate": 0.2095238095238095,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "668909",
"player_name": "Gavin Williams",
"quality": -0.029692033239212545,
"contact": -0.3796487098924496,
"command": 0.5659977605593547,
"movement": 0.374384017333697,
"xwoba": 0.323,
"whiff": 30.9,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "CLE",
"original_runs": 1,
"run_delta": -0.1967,
"adjusted_runs": 1,
"lineup": {
"players_used": 9,
"total_weight": 54.0,
"quality": 0.01562886818827149,
"contact": 0.046223341966270724,
"power": -0.2357418270817048,
"discipline": 0.3525510127734068,
"xwoba": 0.31716666666666665,
"recent_xwoba": 0.31716666666666665,
"barrel": 5.785185185185185,
"ab_hard_contact": 0.12293770880682615,
"ab_bat_speed": 68.35641518751758,
"ab_strikeout_rate": 0.18410992197086118,
"available_players": 9,
"top_players": [
{
"player_id": "680757",
"player_name": "Steven Kwan",
"position": "LF",
"weight": 7.0,
"quality": -0.62261940500992,
"contact": -0.5302541173165403,
"power": -1.5413653357034545,
"discipline": 1.5551160390081957,
"xwoba": 0.299,
"recent_xwoba": 0.299,
"barrel": 0.5,
"ab_hard_contact": -0.7888305235928899,
"ab_bat_speed": 61.68724537037036,
"ab_strikeout_rate": 0.10337690631808279,
"available": 1.0
},
{
"player_id": "608070",
"player_name": "José Ramírez",
"position": "3B",
"weight": 7.0,
"quality": 0.8855499715915668,
"contact": 1.1332623266082515,
"power": 0.5392127531834744,
"discipline": 1.2231655643738975,
"xwoba": 0.366,
"recent_xwoba": 0.366,
"barrel": 7.1,
"ab_hard_contact": 0.5490169684313932,
"ab_bat_speed": 69.14786904761904,
"ab_strikeout_rate": 0.1242559523809524,
"available": 1.0
},
{
"player_id": "800050",
"player_name": "Chase DeLauter",
"position": "DH",
"weight": 7.0,
"quality": 0.4806038435228244,
"contact": 0.7581409140062115,
"power": 0.12306944219592009,
"discipline": 0.8087310405643736,
"xwoba": 0.341,
"recent_xwoba": 0.341,
"barrel": 6.2,
"ab_hard_contact": 0.6290078915374542,
"ab_bat_speed": 69.56625277777778,
"ab_strikeout_rate": 0.10483333333333332,
"available": 1.0
},
{
"player_id": "677587",
"player_name": "Brayan Rocchio",
"position": "SS",
"weight": 5.0,
"quality": -0.1904639017283042,
"contact": 0.01972762906461179,
"power": -0.6016807397440322,
"discipline": 0.39826787794083396,
"xwoba": 0.319,
"recent_xwoba": 0.319,
"barrel": 3.4,
"ab_hard_contact": -0.1475195567853966,
"ab_bat_speed": 69.15457023060797,
"ab_strikeout_rate": 0.1045822102425876,
"available": 1.0
},
{
"player_id": "682177",
"player_name": "Daniel Schneemann",
"position": "CF",
"weight": 6.0,
"quality": -0.22931113798793545,
"contact": -0.4154386273574252,
"power": -0.2999981467862236,
"discipline": -0.3657429854096522,
"xwoba": 0.302,
"recent_xwoba": 0.302,
"barrel": 6.1,
"ab_hard_contact": 0.31241801665648344,
"ab_bat_speed": 70.26065568475452,
"ab_strikeout_rate": 0.3128787878787879,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "701542",
"player_name": "Will Warren",
"quality": 0.26257221884539056,
"contact": 0.3716400355959635,
"command": 0.11456918913078337,
"movement": 0.4596306719807861,
"xwoba": 0.29,
"whiff": 24.1,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"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": "NYY 2 - 1 CLE",
"confidence": 0.553226,
"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": "NYY 2 - 1 CLE",
"winner": "NYY"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "NYY 2 - 1 CLE",
"winner": "NYY"
},
"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 NYY | True | 1.0212 | 1.0212 | 1 | 9 | 0 |
| Home CLE | True | 1.0100 | 1.0100 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LF | Cody Bellinger | 3 | 1.0869 | 1.1584 | neutral | 0.3770 | 0.2900 | 0.4640 | 8.70 | 39.60 | 89.60 | 19.80 | 17.60 | 12.90 | 14.40 | 0.1714 |
| CF | Trent Grisham | 146 | 1.0678 | 0.9043 | neutral | 0.3530 | 0.2460 | 0.4450 | 12.40 | 43.80 | 90.30 | 17.20 | 16.60 | 16.30 | 14.70 | 0.6571 |
| DH | Paul Goldschmidt | 122 | 1.0372 | 0.4966 | neutral | 0.3690 | 0.2780 | 0.4930 | 11.80 | 42.20 | 87.70 | 14.60 | 24.30 | 19.70 | 8.80 | -0.2571 |
| 1B | Ben Rice | 25 | 1.1109 | 1.4782 | negative_batter_regression | 0.3960 | 0.2840 | 0.5400 | 16.70 | 50.60 | 92.30 | 14.20 | 24.90 | 24 | 12.80 | -1.1429 |
| RF | Spencer Jones | 360 | 0.9689 | -0.4143 | negative_batter_regression | 0.2470 | 0.1880 | 0.2760 | 0 | 73.30 | 96.80 | 12.90 | 34.90 | 41.90 | 9.70 | -1 |
| 2B | Jazz Chisholm Jr. | 184 | 0.9746 | -0.3390 | neutral | 0.2880 | 0.2120 | 0.3600 | 7.30 | 38.80 | 89.50 | 15.50 | 31.80 | 29 | 9.30 | -0.6857 |
| SS | José Caballero | 96 | 0.9593 | -0.5427 | negative_batter_regression | 0.2840 | 0.2400 | 0.3400 | 2.90 | 26.40 | 83.20 | 10.40 | 25.90 | 18.50 | 5.30 | -0.8857 |
| 3B | Ryan McMahon | 350 | 0.9962 | -0.0501 | neutral | 0.2820 | 0.2180 | 0.3690 | 9.50 | 49.10 | 90.60 | 12.70 | 31.60 | 31.40 | 7 | 0.2857 |
| C | J.C. Escarra | 388 | 0.9887 | -0.1508 | positive_batter_regression | 0.2760 | 0.2190 | 0.3300 | 4.20 | 31.30 | 88.80 | 11.50 | 29.50 | 22.10 | 7.40 | 1.4857 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2B | Travis Bazzana | 110 | 1.0010 | 0.0131 | neutral | 0.3230 | 0.2600 | 0.3820 | 3.80 | 36.50 | 88.90 | 11.80 | 24.90 | 18.40 | 10.50 | -0.8000 |
| DH | Chase DeLauter | 202 | 1.0459 | 0.6125 | neutral | 0.3410 | 0.2770 | 0.4110 | 6.20 | 40.50 | 90 | 14.60 | 16 | 12.90 | 10.20 | 0.4000 |
| 1B | Kyle Manzardo | 212 | 1.0140 | 0.1860 | neutral | 0.3160 | 0.2270 | 0.4010 | 12.50 | 41.10 | 88.60 | 17.40 | 30.70 | 33.20 | 9.90 | -0.1143 |
| 3B | José Ramírez | 26 | 1.0866 | 1.1542 | neutral | 0.3660 | 0.2860 | 0.4600 | 7.10 | 45.20 | 90.50 | 20 | 16.60 | 13.70 | 14 | 0.8286 |
| CF | Daniel Schneemann | 100 | 0.9955 | -0.0600 | neutral | 0.3020 | 0.2340 | 0.3710 | 6.10 | 36.80 | 87.50 | 10.70 | 30 | 28.90 | 9.60 | 0.1143 |
| C | Patrick Bailey | 443 | 0.9978 | -0.0288 | positive_batter_regression | 0.2780 | 0.2190 | 0.3670 | 6.50 | 37.60 | 89.80 | 12.20 | 26.30 | 24.40 | 6.70 | 2 |
| RF | Angel Martínez | 204 | 0.9921 | -0.1052 | neutral | 0.2950 | 0.2470 | 0.3910 | 7.40 | 34.40 | 87.60 | 14.60 | 18.90 | 21.50 | 2.70 | -0.1714 |
| LF | Steven Kwan | 188 | 0.9641 | -0.4784 | neutral | 0.2990 | 0.2400 | 0.3010 | 0.50 | 8.90 | 82.80 | 15.20 | 7.60 | 10.20 | 13.30 | 0.4571 |
| SS | Brayan Rocchio | 50 | 0.9927 | -0.0967 | neutral | 0.3190 | 0.2560 | 0.3700 | 3.40 | 32.80 | 86.80 | 12 | 23.40 | 12.20 | 8.80 | -0.7143 |
{
"home": {
"applied": true,
"offense_factor": 1.01,
"raw_average_factor": 1.01,
"team_espn_average_rank": 170.56,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "2B",
"player_id": "683953",
"player_name": "Travis Bazzana",
"offense_factor": 1.001,
"quality_score": 0.0131,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683953",
"espn_id": 5007707,
"player_name": "Travis Bazzana",
"team": "CLE",
"role": "batter",
"espn_rank": 110,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 110,
"gp_value": 36.0,
"gp_rank": "305",
"ab_value": 133.0,
"ab_rank": "235",
"r_value": 14.0,
"r_rank": "261",
"h_value": 36.0,
"h_rank": "197",
"avg_value": 0.2706766,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 17.0,
"rbi_rank": "216",
"tb_value": 59.0,
"tb_rank": "985",
"bb_value": 16.0,
"bb_rank": "172",
"so_value": 28.0,
"so_rank": "258",
"sb_value": 9.0,
"sb_rank": "37",
"obp_value": 0.3552631,
"obp_rank": "-",
"slg_value": 0.443609,
"slg_rank": "-",
"ops_value": 0.7988721,
"ops_rank": null,
"war_value": 1.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 109.0,
"k_percent": 18.4,
"bb_percent": 10.5,
"woba": 0.351,
"xwoba": 0.323,
"xba": 0.26,
"xslg": 0.382,
"sweet_spot_percent": 32.1,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 36.5,
"exit_velocity_avg": 88.9,
"launch_angle_avg": 11.8,
"whiff_percent": 24.9,
"swing_percent": 44.6
},
"components": {
"expected_quality": 0.1609,
"regression_edge": -0.8,
"xwoba_edge": 0.5143,
"xba_edge": 0.6,
"xslg_edge": 0.1143,
"barrel_edge": -0.7111,
"hard_hit_edge": -0.3357,
"exit_velocity_edge": 0.04,
"sweet_spot_edge": -0.2,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "800050",
"player_name": "Chase DeLauter",
"offense_factor": 1.0459,
"quality_score": 0.6125,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "800050",
"espn_id": 4619649,
"player_name": "Chase DeLauter",
"team": "CLE",
"role": "batter",
"espn_rank": 202,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 202,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 227.0,
"ab_rank": "79",
"r_value": 23.0,
"r_rank": "153",
"h_value": 58.0,
"h_rank": "74",
"avg_value": 0.2555066,
"avg_rank": 72.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 7.0,
"hr_rank": "100",
"rbi_value": 33.0,
"rbi_rank": "52",
"tb_value": 92.0,
"tb_rank": "564",
"bb_value": 26.0,
"bb_rank": "62",
"so_value": 33.0,
"so_rank": "215",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3294117,
"obp_rank": "90",
"slg_value": 0.4052863,
"slg_rank": "97",
"ops_value": 0.734698,
"ops_rank": 96.0,
"war_value": 0.45,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 211.0,
"k_percent": 12.9,
"bb_percent": 10.2,
"woba": 0.327,
"xwoba": 0.341,
"xba": 0.277,
"xslg": 0.411,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 40.5,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 14.6,
"whiff_percent": 16.0,
"swing_percent": 41.8
},
"components": {
"expected_quality": 0.6774,
"regression_edge": 0.4,
"xwoba_edge": 1.0286,
"xba_edge": 1.0857,
"xslg_edge": 0.5286,
"barrel_edge": -0.1778,
"hard_hit_edge": 0.2357,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 0.4833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "700932",
"player_name": "Kyle Manzardo",
"offense_factor": 1.014,
"quality_score": 0.186,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "700932",
"espn_id": 4917927,
"player_name": "Kyle Manzardo",
"team": "CLE",
"role": "batter",
"espn_rank": 212,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 212,
"gp_value": 58.0,
"gp_rank": "141",
"ab_value": 178.0,
"ab_rank": "165",
"r_value": 23.0,
"r_rank": "153",
"h_value": 41.0,
"h_rank": "174",
"avg_value": 0.230337,
"avg_rank": 128.0,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 7.0,
"hr_rank": "100",
"rbi_value": 21.0,
"rbi_rank": "174",
"tb_value": 71.0,
"tb_rank": "777",
"bb_value": 20.0,
"bb_rank": "123",
"so_value": 67.0,
"so_rank": "31",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3168316,
"obp_rank": "112",
"slg_value": 0.3988764,
"slg_rank": "107",
"ops_value": 0.715708,
"ops_rank": 107.0,
"war_value": 0.39,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 165.0,
"k_percent": 33.2,
"bb_percent": 9.9,
"woba": 0.32,
"xwoba": 0.316,
"xba": 0.227,
"xslg": 0.401,
"sweet_spot_percent": 35.7,
"barrel_batted_rate": 12.5,
"hard_hit_percent": 41.1,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 17.4,
"whiff_percent": 30.7,
"swing_percent": 45.8
},
"components": {
"expected_quality": 0.307,
"regression_edge": -0.1143,
"xwoba_edge": 0.3143,
"xba_edge": -0.3429,
"xslg_edge": 0.3857,
"barrel_edge": 1.2222,
"hard_hit_edge": 0.3214,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": 0.4,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "608070",
"player_name": "José Ramírez",
"offense_factor": 1.0866,
"quality_score": 1.1542,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "608070",
"espn_id": 32801,
"player_name": "Jose Ramirez",
"team": "CLE",
"role": "batter",
"espn_rank": 26,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 26,
"gp_value": 67.0,
"gp_rank": "1",
"ab_value": 248.0,
"ab_rank": "19",
"r_value": 39.0,
"r_rank": "34",
"h_value": 59.0,
"h_rank": "68",
"avg_value": 0.2379032,
"avg_rank": 109.0,
"2b_value": 17.0,
"2b_rank": "7",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 10.0,
"hr_rank": "49",
"rbi_value": 33.0,
"rbi_rank": "52",
"tb_value": 106.0,
"tb_rank": "576",
"bb_value": 41.0,
"bb_rank": "13",
"so_value": 40.0,
"so_rank": "163",
"sb_value": 23.0,
"sb_rank": "1",
"obp_value": 0.3447098,
"obp_rank": "62",
"slg_value": 0.4274193,
"slg_rank": "77",
"ops_value": 0.7721291,
"ops_rank": 75.0,
"war_value": 2.39,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 243.0,
"k_percent": 13.7,
"bb_percent": 14.0,
"woba": 0.337,
"xwoba": 0.366,
"xba": 0.286,
"xslg": 0.46,
"sweet_spot_percent": 36.5,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 45.2,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 20.0,
"whiff_percent": 16.6,
"swing_percent": 46.4
},
"components": {
"expected_quality": 1.2072,
"regression_edge": 0.8286,
"xwoba_edge": 1.7429,
"xba_edge": 1.3429,
"xslg_edge": 1.2286,
"barrel_edge": 0.0222,
"hard_hit_edge": 0.9071,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": 0.5333,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "CF",
"player_id": "682177",
"player_name": "Daniel Schneemann",
"offense_factor": 0.9955,
"quality_score": -0.06,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682177",
"espn_id": 42001,
"player_name": "Daniel Schneemann",
"team": "CLE",
"role": "batter",
"espn_rank": 100,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 100,
"gp_value": 52.0,
"gp_rank": "186",
"ab_value": 169.0,
"ab_rank": "180",
"r_value": 20.0,
"r_rank": "188",
"h_value": 39.0,
"h_rank": "179",
"avg_value": 0.2307692,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 20.0,
"rbi_rank": "183",
"tb_value": 60.0,
"tb_rank": "1205",
"bb_value": 18.0,
"bb_rank": "147",
"so_value": 54.0,
"so_rank": "82",
"sb_value": 4.0,
"sb_rank": "108",
"obp_value": 0.3048128,
"obp_rank": "-",
"slg_value": 0.3550295,
"slg_rank": "-",
"ops_value": 0.6598423,
"ops_rank": null,
"war_value": 1.18,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 159.0,
"k_percent": 28.9,
"bb_percent": 9.6,
"woba": 0.298,
"xwoba": 0.302,
"xba": 0.234,
"xslg": 0.371,
"sweet_spot_percent": 37.4,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 36.8,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 10.7,
"whiff_percent": 30.0,
"swing_percent": 48.8
},
"components": {
"expected_quality": -0.1151,
"regression_edge": 0.1143,
"xwoba_edge": -0.0857,
"xba_edge": -0.1429,
"xslg_edge": -0.0429,
"barrel_edge": -0.2,
"hard_hit_edge": -0.2929,
"exit_velocity_edge": -0.52,
"sweet_spot_edge": 0.6833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "672275",
"player_name": "Patrick Bailey",
"offense_factor": 0.9978,
"quality_score": -0.0288,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "672275",
"espn_id": 4345843,
"player_name": "Patrick Bailey",
"team": "CLE",
"role": "batter",
"espn_rank": 443,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 443,
"gp_value": 45.0,
"gp_rank": "236",
"ab_value": 125.0,
"ab_rank": "246",
"r_value": 8.0,
"r_rank": "352",
"h_value": 18.0,
"h_rank": "333",
"avg_value": 0.144,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": "370",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 9.0,
"rbi_rank": "311",
"tb_value": 28.0,
"tb_rank": "1635",
"bb_value": 9.0,
"bb_rank": "280",
"so_value": 33.0,
"so_rank": "215",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.2,
"obp_rank": "-",
"slg_value": 0.224,
"slg_rank": "-",
"ops_value": 0.424,
"ops_rank": null,
"war_value": -0.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 106.0,
"k_percent": 24.4,
"bb_percent": 6.7,
"woba": 0.195,
"xwoba": 0.278,
"xba": 0.219,
"xslg": 0.367,
"sweet_spot_percent": 28.0,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 37.6,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 12.2,
"whiff_percent": 26.3,
"swing_percent": 49.7
},
"components": {
"expected_quality": -0.3951,
"regression_edge": 2.0,
"xwoba_edge": -0.7714,
"xba_edge": -0.5714,
"xslg_edge": -0.1,
"barrel_edge": -0.1111,
"hard_hit_edge": -0.1786,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": -0.8833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "682657",
"player_name": "Angel Martínez",
"offense_factor": 0.9921,
"quality_score": -0.1052,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682657",
"espn_id": 42497,
"player_name": "Angel Martinez",
"team": "CLE",
"role": "batter",
"espn_rank": 204,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 204,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 207.0,
"ab_rank": "118",
"r_value": 25.0,
"r_rank": "134",
"h_value": 48.0,
"h_rank": "126",
"avg_value": 0.231884,
"avg_rank": 124.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 9.0,
"hr_rank": "60",
"rbi_value": 29.0,
"rbi_rank": "89",
"tb_value": 87.0,
"tb_rank": "515",
"bb_value": 6.0,
"bb_rank": "335",
"so_value": 48.0,
"so_rank": "116",
"sb_value": 9.0,
"sb_rank": "37",
"obp_value": 0.2694063,
"obp_rank": "166",
"slg_value": 0.4202898,
"slg_rank": "82",
"ops_value": 0.6896961,
"ops_rank": 121.0,
"war_value": 0.43,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 185.0,
"k_percent": 21.5,
"bb_percent": 2.7,
"woba": 0.301,
"xwoba": 0.295,
"xba": 0.247,
"xslg": 0.391,
"sweet_spot_percent": 34.8,
"barrel_batted_rate": 7.4,
"hard_hit_percent": 34.4,
"exit_velocity_avg": 87.6,
"launch_angle_avg": 14.6,
"whiff_percent": 18.9,
"swing_percent": 55.4
},
"components": {
"expected_quality": -0.1175,
"regression_edge": -0.1714,
"xwoba_edge": -0.2857,
"xba_edge": 0.2286,
"xslg_edge": 0.2429,
"barrel_edge": 0.0889,
"hard_hit_edge": -0.6357,
"exit_velocity_edge": -0.48,
"sweet_spot_edge": 0.25,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "680757",
"player_name": "Steven Kwan",
"offense_factor": 0.9641,
"quality_score": -0.4784,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680757",
"espn_id": 41996,
"player_name": "Steven Kwan",
"team": "CLE",
"role": "batter",
"espn_rank": 188,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 188,
"gp_value": 60.0,
"gp_rank": "110",
"ab_value": 214.0,
"ab_rank": "106",
"r_value": 29.0,
"r_rank": "93",
"h_value": 47.0,
"h_rank": "134",
"avg_value": 0.2196261,
"avg_rank": 145.0,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 12.0,
"rbi_rank": "273",
"tb_value": 58.0,
"tb_rank": "1662",
"bb_value": 34.0,
"bb_rank": "25",
"so_value": 26.0,
"so_rank": "281",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.329365,
"obp_rank": "90",
"slg_value": 0.271028,
"slg_rank": "171",
"ops_value": 0.600393,
"ops_rank": 164.0,
"war_value": 0.5,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 226.0,
"k_percent": 10.2,
"bb_percent": 13.3,
"woba": 0.283,
"xwoba": 0.299,
"xba": 0.24,
"xslg": 0.301,
"sweet_spot_percent": 37.8,
"barrel_batted_rate": 0.5,
"hard_hit_percent": 8.9,
"exit_velocity_avg": 82.8,
"launch_angle_avg": 15.2,
"whiff_percent": 7.6,
"swing_percent": 35.4
},
"components": {
"expected_quality": -0.6307,
"regression_edge": 0.4571,
"xwoba_edge": -0.1714,
"xba_edge": 0.0286,
"xslg_edge": -1.0429,
"barrel_edge": -1.4444,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -2.4,
"sweet_spot_edge": 0.75,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "677587",
"player_name": "Brayan Rocchio",
"offense_factor": 0.9927,
"quality_score": -0.0967,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677587",
"espn_id": 41217,
"player_name": "Brayan Rocchio",
"team": "CLE",
"role": "batter",
"espn_rank": 50,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 50,
"gp_value": 64.0,
"gp_rank": "37",
"ab_value": 207.0,
"ab_rank": "118",
"r_value": 28.0,
"r_rank": "104",
"h_value": 58.0,
"h_rank": "74",
"avg_value": 0.2801932,
"avg_rank": 36.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 29.0,
"rbi_rank": "89",
"tb_value": 84.0,
"tb_rank": "787",
"bb_value": 21.0,
"bb_rank": "108",
"so_value": 29.0,
"so_rank": "250",
"sb_value": 11.0,
"sb_rank": "18",
"obp_value": 0.3601694,
"obp_rank": "39",
"slg_value": 0.4057971,
"slg_rank": "96",
"ops_value": 0.7659665,
"ops_rank": 77.0,
"war_value": 1.78,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 197.0,
"k_percent": 12.2,
"bb_percent": 8.8,
"woba": 0.344,
"xwoba": 0.319,
"xba": 0.256,
"xslg": 0.37,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 3.4,
"hard_hit_percent": 32.8,
"exit_velocity_avg": 86.8,
"launch_angle_avg": 12.0,
"whiff_percent": 23.4,
"swing_percent": 48.3
},
"components": {
"expected_quality": -0.0093,
"regression_edge": -0.7143,
"xwoba_edge": 0.4,
"xba_edge": 0.4857,
"xslg_edge": -0.0571,
"barrel_edge": -0.8,
"hard_hit_edge": -0.8643,
"exit_velocity_edge": -0.8,
"sweet_spot_edge": -0.05,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0212,
"raw_average_factor": 1.0212,
"team_espn_average_rank": 186.0,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "LF",
"player_id": "641355",
"player_name": "Cody Bellinger",
"offense_factor": 1.0869,
"quality_score": 1.1584,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641355",
"espn_id": 33912,
"player_name": "Cody Bellinger",
"team": "NYY",
"role": "batter",
"espn_rank": 3,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 3,
"gp_value": 63.0,
"gp_rank": "50",
"ab_value": 227.0,
"ab_rank": "79",
"r_value": 38.0,
"r_rank": "41",
"h_value": 62.0,
"h_rank": "47",
"avg_value": 0.2731277,
"avg_rank": 49.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 3.0,
"3b_rank": "5",
"hr_value": 9.0,
"hr_rank": "60",
"rbi_value": 41.0,
"rbi_rank": "15",
"tb_value": 108.0,
"tb_rank": "274",
"bb_value": 39.0,
"bb_rank": "16",
"so_value": 35.0,
"so_rank": "201",
"sb_value": 7.0,
"sb_rank": "52",
"obp_value": 0.3726937,
"obp_rank": "27",
"slg_value": 0.4757709,
"slg_rank": "40",
"ops_value": 0.8484646,
"ops_rank": 32.0,
"war_value": 3.61,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 230.0,
"k_percent": 12.9,
"bb_percent": 14.4,
"woba": 0.371,
"xwoba": 0.377,
"xba": 0.29,
"xslg": 0.464,
"sweet_spot_percent": 41.1,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 39.6,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 19.8,
"whiff_percent": 17.6,
"swing_percent": 43.5
},
"components": {
"expected_quality": 1.3191,
"regression_edge": 0.1714,
"xwoba_edge": 2.0571,
"xba_edge": 1.4571,
"xslg_edge": 1.2857,
"barrel_edge": 0.3778,
"hard_hit_edge": 0.1071,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 1.3,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "663757",
"player_name": "Trent Grisham",
"offense_factor": 1.0678,
"quality_score": 0.9043,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663757",
"espn_id": 34995,
"player_name": "Trent Grisham",
"team": "NYY",
"role": "batter",
"espn_rank": 146,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 146,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 207.0,
"ab_rank": "118",
"r_value": 35.0,
"r_rank": "53",
"h_value": 46.0,
"h_rank": "144",
"avg_value": 0.2222222,
"avg_rank": 143.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 33.0,
"rbi_rank": "52",
"tb_value": 83.0,
"tb_rank": "562",
"bb_value": 36.0,
"bb_rank": "22",
"so_value": 40.0,
"so_rank": "163",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3346938,
"obp_rank": "80",
"slg_value": 0.4009661,
"slg_rank": "104",
"ops_value": 0.7356599,
"ops_rank": 94.0,
"war_value": 0.8,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 207.0,
"k_percent": 16.3,
"bb_percent": 14.7,
"woba": 0.33,
"xwoba": 0.353,
"xba": 0.246,
"xslg": 0.445,
"sweet_spot_percent": 34.3,
"barrel_batted_rate": 12.4,
"hard_hit_percent": 43.8,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 17.2,
"whiff_percent": 16.6,
"swing_percent": 35.2
},
"components": {
"expected_quality": 1.0105,
"regression_edge": 0.6571,
"xwoba_edge": 1.3714,
"xba_edge": 0.2,
"xslg_edge": 1.0143,
"barrel_edge": 1.2,
"hard_hit_edge": 0.7071,
"exit_velocity_edge": 0.6,
"sweet_spot_edge": 0.1667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "502671",
"player_name": "Paul Goldschmidt",
"offense_factor": 1.0372,
"quality_score": 0.4966,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "502671",
"espn_id": 31027,
"player_name": "Paul Goldschmidt",
"team": "NYY",
"role": "batter",
"espn_rank": 122,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 122,
"gp_value": 39.0,
"gp_rank": "285",
"ab_value": 131.0,
"ab_rank": "236",
"r_value": 22.0,
"r_rank": "168",
"h_value": 36.0,
"h_rank": "197",
"avg_value": 0.2748091,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 7.0,
"hr_rank": "100",
"rbi_value": 24.0,
"rbi_rank": "140",
"tb_value": 67.0,
"tb_rank": "776",
"bb_value": 13.0,
"bb_rank": "212",
"so_value": 29.0,
"so_rank": "250",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3537414,
"obp_rank": "-",
"slg_value": 0.5114503,
"slg_rank": "-",
"ops_value": 0.8651917,
"ops_rank": null,
"war_value": 0.94,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 107.0,
"k_percent": 19.7,
"bb_percent": 8.8,
"woba": 0.378,
"xwoba": 0.369,
"xba": 0.278,
"xslg": 0.493,
"sweet_spot_percent": 37.3,
"barrel_batted_rate": 11.8,
"hard_hit_percent": 42.2,
"exit_velocity_avg": 87.7,
"launch_angle_avg": 14.6,
"whiff_percent": 24.3,
"swing_percent": 48.1
},
"components": {
"expected_quality": 1.2291,
"regression_edge": -0.2571,
"xwoba_edge": 1.8286,
"xba_edge": 1.1143,
"xslg_edge": 1.7,
"barrel_edge": 1.0667,
"hard_hit_edge": 0.4786,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": 0.6667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "700250",
"player_name": "Ben Rice",
"offense_factor": 1.1109,
"quality_score": 1.4782,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "700250",
"espn_id": 5016968,
"player_name": "Ben Rice",
"team": "NYY",
"role": "batter",
"espn_rank": 25,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 25,
"gp_value": 59.0,
"gp_rank": "132",
"ab_value": 214.0,
"ab_rank": "106",
"r_value": 47.0,
"r_rank": "3",
"h_value": 64.0,
"h_rank": "39",
"avg_value": 0.2990654,
"avg_rank": 17.0,
"2b_value": 15.0,
"2b_rank": "16",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 18.0,
"hr_rank": "4",
"rbi_value": 45.0,
"rbi_rank": "8",
"tb_value": 137.0,
"tb_rank": "91",
"bb_value": 32.0,
"bb_rank": "35",
"so_value": 60.0,
"so_rank": "56",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.392,
"obp_rank": "10",
"slg_value": 0.6401869,
"slg_rank": "2",
"ops_value": 1.0321869,
"ops_rank": 2.0,
"war_value": 2.41,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 207.0,
"k_percent": 24.0,
"bb_percent": 12.8,
"woba": 0.436,
"xwoba": 0.396,
"xba": 0.284,
"xslg": 0.54,
"sweet_spot_percent": 42.3,
"barrel_batted_rate": 16.7,
"hard_hit_percent": 50.6,
"exit_velocity_avg": 92.3,
"launch_angle_avg": 14.2,
"whiff_percent": 24.9,
"swing_percent": 41.9
},
"components": {
"expected_quality": 2.0129,
"regression_edge": -1.1429,
"xwoba_edge": 2.5,
"xba_edge": 1.2857,
"xslg_edge": 2.3714,
"barrel_edge": 2.1556,
"hard_hit_edge": 1.6786,
"exit_velocity_edge": 1.4,
"sweet_spot_edge": 1.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "682987",
"player_name": "Spencer Jones",
"offense_factor": 0.9689,
"quality_score": -0.4143,
"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": 360,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 360,
"gp_value": 12.0,
"gp_rank": "448",
"ab_value": 28.0,
"ab_rank": "449",
"r_value": 0.0,
"r_rank": "516",
"h_value": 7.0,
"h_rank": "426",
"avg_value": 0.25,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 3.0,
"rbi_rank": "427",
"tb_value": 8.0,
"tb_rank": "2451",
"bb_value": 3.0,
"bb_rank": "406",
"so_value": 13.0,
"so_rank": "395",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3225806,
"obp_rank": "-",
"slg_value": 0.2857142,
"slg_rank": "-",
"ops_value": 0.6082948,
"ops_rank": null,
"war_value": -0.03,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 26.0,
"k_percent": 41.9,
"bb_percent": 9.7,
"woba": 0.282,
"xwoba": 0.247,
"xba": 0.188,
"xslg": 0.276,
"sweet_spot_percent": 26.7,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 73.3,
"exit_velocity_avg": 96.8,
"launch_angle_avg": 12.9,
"whiff_percent": 34.9,
"swing_percent": 56.8
},
"components": {
"expected_quality": -0.9077,
"regression_edge": -1.0,
"xwoba_edge": -1.6571,
"xba_edge": -1.4571,
"xslg_edge": -1.4,
"barrel_edge": -1.5556,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.5,
"sweet_spot_edge": -1.1,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "665862",
"player_name": "Jazz Chisholm Jr.",
"offense_factor": 0.9746,
"quality_score": -0.339,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665862",
"espn_id": 41433,
"player_name": "Jazz Chisholm Jr.",
"team": "NYY",
"role": "batter",
"espn_rank": 184,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 184,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 222.0,
"ab_rank": "89",
"r_value": 30.0,
"r_rank": "79",
"h_value": 52.0,
"h_rank": "102",
"avg_value": 0.2342342,
"avg_rank": 122.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 88.0,
"tb_rank": "539",
"bb_value": 23.0,
"bb_rank": "83",
"so_value": 72.0,
"so_rank": "22",
"sb_value": 16.0,
"sb_rank": "6",
"obp_value": 0.3064516,
"obp_rank": "126",
"slg_value": 0.3963963,
"slg_rank": "109",
"ops_value": 0.7028479,
"ops_rank": 114.0,
"war_value": 0.52,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 29.0,
"bb_percent": 9.3,
"woba": 0.312,
"xwoba": 0.288,
"xba": 0.212,
"xslg": 0.36,
"sweet_spot_percent": 29.6,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.8,
"exit_velocity_avg": 89.5,
"launch_angle_avg": 15.5,
"whiff_percent": 31.8,
"swing_percent": 44.2
},
"components": {
"expected_quality": -0.2955,
"regression_edge": -0.6857,
"xwoba_edge": -0.4857,
"xba_edge": -0.7714,
"xslg_edge": -0.2,
"barrel_edge": 0.0667,
"hard_hit_edge": -0.0071,
"exit_velocity_edge": 0.28,
"sweet_spot_edge": -0.6167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "676609",
"player_name": "José Caballero",
"offense_factor": 0.9593,
"quality_score": -0.5427,
"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": 96,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 96,
"gp_value": 54.0,
"gp_rank": "176",
"ab_value": 175.0,
"ab_rank": "171",
"r_value": 23.0,
"r_rank": "153",
"h_value": 45.0,
"h_rank": "152",
"avg_value": 0.2571428,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 16.0,
"rbi_rank": "231",
"tb_value": 69.0,
"tb_rank": "799",
"bb_value": 10.0,
"bb_rank": "261",
"so_value": 35.0,
"so_rank": "201",
"sb_value": 15.0,
"sb_rank": "8",
"obp_value": 0.3121693,
"obp_rank": "-",
"slg_value": 0.3942857,
"slg_rank": "-",
"ops_value": 0.706455,
"ops_rank": null,
"war_value": 1.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 163.0,
"k_percent": 18.5,
"bb_percent": 5.3,
"woba": 0.315,
"xwoba": 0.284,
"xba": 0.24,
"xslg": 0.34,
"sweet_spot_percent": 31.4,
"barrel_batted_rate": 2.9,
"hard_hit_percent": 26.4,
"exit_velocity_avg": 83.2,
"launch_angle_avg": 10.4,
"whiff_percent": 25.9,
"swing_percent": 48.9
},
"components": {
"expected_quality": -0.7076,
"regression_edge": -0.8857,
"xwoba_edge": -0.6,
"xba_edge": 0.0286,
"xslg_edge": -0.4857,
"barrel_edge": -0.9111,
"hard_hit_edge": -1.7786,
"exit_velocity_edge": -2.24,
"sweet_spot_edge": -0.3167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "641857",
"player_name": "Ryan McMahon",
"offense_factor": 0.9962,
"quality_score": -0.0501,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641857",
"espn_id": 33247,
"player_name": "Ryan McMahon",
"team": "NYY",
"role": "batter",
"espn_rank": 350,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 350,
"gp_value": 58.0,
"gp_rank": "141",
"ab_value": 159.0,
"ab_rank": "199",
"r_value": 16.0,
"r_rank": "230",
"h_value": 33.0,
"h_rank": "225",
"avg_value": 0.2075471,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 20.0,
"rbi_rank": "183",
"tb_value": 55.0,
"tb_rank": "1219",
"bb_value": 12.0,
"bb_rank": "230",
"so_value": 54.0,
"so_rank": "82",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.2631578,
"obp_rank": "-",
"slg_value": 0.3459119,
"slg_rank": "-",
"ops_value": 0.6090697,
"ops_rank": null,
"war_value": -0.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 149.0,
"k_percent": 31.4,
"bb_percent": 7.0,
"woba": 0.272,
"xwoba": 0.282,
"xba": 0.218,
"xslg": 0.369,
"sweet_spot_percent": 29.2,
"barrel_batted_rate": 9.5,
"hard_hit_percent": 49.1,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 12.7,
"whiff_percent": 31.6,
"swing_percent": 46.7
},
"components": {
"expected_quality": -0.1326,
"regression_edge": 0.2857,
"xwoba_edge": -0.6571,
"xba_edge": -0.6,
"xslg_edge": -0.0714,
"barrel_edge": 0.5556,
"hard_hit_edge": 1.4643,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": -0.6833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "641555",
"player_name": "J.C. Escarra",
"offense_factor": 0.9887,
"quality_score": -0.1508,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "641555",
"espn_id": 41644,
"player_name": "J.C. Escarra",
"team": "NYY",
"role": "batter",
"espn_rank": 388,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 388,
"gp_value": 23.0,
"gp_rank": "379",
"ab_value": 62.0,
"ab_rank": "376",
"r_value": 5.0,
"r_rank": "398",
"h_value": 11.0,
"h_rank": "384",
"avg_value": 0.1774193,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 7.0,
"rbi_rank": "345",
"tb_value": 16.0,
"tb_rank": "2084",
"bb_value": 5.0,
"bb_rank": "358",
"so_value": 15.0,
"so_rank": "379",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2352941,
"obp_rank": "-",
"slg_value": 0.2580645,
"slg_rank": "-",
"ops_value": 0.4933586,
"ops_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 60.0,
"k_percent": 22.1,
"bb_percent": 7.4,
"woba": 0.224,
"xwoba": 0.276,
"xba": 0.219,
"xslg": 0.33,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 4.2,
"hard_hit_percent": 31.3,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 11.5,
"whiff_percent": 29.5,
"swing_percent": 45.5
},
"components": {
"expected_quality": -0.6314,
"regression_edge": 1.4857,
"xwoba_edge": -0.8286,
"xba_edge": -0.5714,
"xslg_edge": -0.6286,
"barrel_edge": -0.6222,
"hard_hit_edge": -1.0786,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": 0.0,
"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 NYY | True | 127 | 0.2102 | 0.9720 | 0.9821 | 1.0067 | 0.9592 | 0.9776 | neutral | 0.2900 | 0.2900 | 25.80 | 7 | 24.10 | 6.60 | 39.80 | |
| Home CLE | True | 19 | -0.1560 | 1 | 1.0133 | 1.0640 | 0.9720 | 1.1617 | neutral | 0.3230 | 0.2940 | 29 | 7.70 | 30.90 | 12.70 | 48.20 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away NYY | True | None | 89 | 90.73 | 2559 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0571 | |
| Home CLE | True | None | 96 | 90.42 | 2270 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0395 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0133 |
| home_runs_vs_away_pitcher | 0.9826 |
| home_pitcher_quality_edge | -0.3662 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "668909",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 301.0,
"k_percent": 29.0,
"bb_percent": 7.7,
"woba": 0.294,
"xwoba": 0.323,
"sweet_spot_percent": 33.5,
"barrel_batted_rate": 12.7,
"hard_hit_percent": 48.2,
"avg_best_speed": 80.0909,
"avg_hyper_speed": 95.7317,
"whiff_percent": 30.9,
"swing_percent": 49.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4692,
"command_and_miss": 0.7171,
"regression_edge": -0.8286,
"xwoba_edge": -0.2429,
"barrel_edge": -1.2444,
"hard_hit_edge": -1.3714,
"whiff_edge": 0.7286,
"bb_edge": 0.35,
"pitch_design_score": 0.0395
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "668909",
"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": 90.41526630271176,
"release_spin_rate": 2270.34814581588,
"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": 90.41526630271176,
"release_spin_rate": 2270.34814581588,
"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.4153,
"release_spin_rate": 2270.3481,
"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.0395,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.282,
"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.156,
"sample_weight": 1.0,
"run_prevention_factor": 1.0133,
"strikeout_factor": 1.064,
"walk_factor": 0.972,
"homer_factor": 1.1617,
"woba_minus_xwoba": -0.029,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668909",
"espn_id": 4345076,
"player_name": "Gavin Williams",
"team": "CLE",
"role": "pitcher",
"espn_rank": 19,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 19,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 6.0,
"qs_rank": 26,
"era_value": 3.1959,
"era_rank": 23.0,
"w_value": 9.0,
"w_rank": 1,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 81.2,
"ip_rank": 6,
"h_value": 63.0,
"h_rank": 52,
"er_value": 29.0,
"er_rank": 69,
"hr_value": 11.0,
"hr_rank": 23,
"bb_value": 25.0,
"bb_rank": 36,
"k_value": 94.0,
"k_rank": 3,
"k_per_9_value": 10.359184,
"k_per_9_rank": 13,
"whip_value": 1.0775,
"whip_rank": 17.0,
"war_value": 1.96,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "701542",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 243.0,
"k_percent": 25.8,
"bb_percent": 7.0,
"woba": 0.29,
"xwoba": 0.29,
"sweet_spot_percent": 33.7,
"barrel_batted_rate": 6.6,
"hard_hit_percent": 39.8,
"avg_best_speed": 79.969,
"avg_hyper_speed": 94.8046,
"whiff_percent": 24.1,
"swing_percent": 44.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.2821,
"command_and_miss": 0.2064,
"regression_edge": 0.0,
"xwoba_edge": 0.7,
"barrel_edge": 0.1111,
"hard_hit_edge": -0.1714,
"whiff_edge": -0.2429,
"bb_edge": 0.525,
"pitch_design_score": 0.0571
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "701542",
"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": 90.72936883668802,
"release_spin_rate": 2558.6240018575522,
"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": 90.72936883668802,
"release_spin_rate": 2558.6240018575522,
"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.7294,
"release_spin_rate": 2558.624,
"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.0571,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4077,
"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.2102,
"sample_weight": 0.972,
"run_prevention_factor": 0.9821,
"strikeout_factor": 1.0067,
"walk_factor": 0.9592,
"homer_factor": 0.9776,
"woba_minus_xwoba": 0.0,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "701542",
"espn_id": 5132011,
"player_name": "Will Warren",
"team": "NYY",
"role": "pitcher",
"espn_rank": 127,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 127,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 5.0,
"qs_rank": 39,
"era_value": 3.2176,
"era_rank": 24.0,
"w_value": 7.0,
"w_rank": 6,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 64.1,
"ip_rank": 69,
"h_value": 58.0,
"h_rank": 79,
"er_value": 23.0,
"er_rank": 106,
"hr_value": 7.0,
"hr_rank": 84,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 70.0,
"k_rank": 35,
"k_per_9_value": 9.792747,
"k_per_9_rank": 13,
"whip_value": 1.1968,
"whip_rank": 40.0,
"war_value": 0.73,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0133,
"home_runs_vs_away_pitcher": 0.9826,
"home_pitcher_quality_edge": -0.3662
},
"score_before": {
"away_runs": 1.0,
"home_runs": 1.0
},
"score_after": {
"away_runs": 1.0133,
"home_runs": 0.9826,
"home_win_probability": 0.4908
},
"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 NYY | 16-40 | 0.286 | 1.40 | 2.60 | -65 | cold | strong | |
| Home CLE | 18-43 | 0.295 | 0.90 | 2.90 | -119 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away NYY | 38-26 | 0.594 | 96 | 1.500 | True |
| Home CLE | 37-30 | 0.552 | 1 | 0.015 | True |
| Signal | - | - | -1.485 | -1.547 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target NYY | - | - | 2 | - | - | - | - |
| Game target CLE | - | - | 1 | - | - | - | - |
| Player finalized NYY | 54 | 15 | 7 | 0 | 8 | 5 | 14 |
| Player finalized CLE | 54 | 12 | 8 | 0 | 7 | 6 | 11 |
| Player model fractional NYY | 52.21 | 13.38 | 7.58 | 2.15 | 7.65 | 5.79 | 13.03 |
| Player model fractional CLE | 54.47 | 11.82 | 6.23 | 1.43 | 5.34 | 5.45 | 11.38 |
| Simulation box NYY | 33 | 6 | 2 | 0 | 2 | 6 | 7 |
| Simulation box CLE | 34 | 7 | 1 | 1 | 1 | 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 NYY | Starter | Will Warren | 5.20 | 1 | 5 | 6 | 1 | 3.95 | 1.30 | True |
| Away NYY | Middle Reliever | David Bednar | 1 | 0 | 0 | 1 | 0 | 3.56 | 1.26 | True |
| Away NYY | Middle Reliever | Fernando Cruz | 1 | 0 | 1 | 0 | 0 | 2.91 | 1.06 | True |
| Away NYY | Middle Reliever | Tim Hill | 1 | 0 | 2 | 0 | 0 | 6.73 | 1.56 | True |
| Away NYY | Middle Reliever | Brent Headrick | 0.10 | 0 | 0 | 0 | 0 | 2.55 | 1.43 | True |
| Home CLE | Starter | Gavin Williams | 6.10 | 1 | 7 | 2 | 5 | 3.56 | 1.14 | True |
| Home CLE | Middle Reliever | Cade Smith | 1 | 1 | 0 | 1 | 1 | 3.53 | 1.07 | True |
| Home CLE | Middle Reliever | Hunter Gaddis | 1 | 0 | 0 | 0 | 0 | 3.04 | 1.16 | True |
| Home CLE | Middle Reliever | Shawn Armstrong | 0.20 | 0 | 0 | 1 | 0 | 3.22 | 1.08 | True |
| Home CLE | Middle Reliever | Colin Holderman | 0 | 0 | 0 | 2 | 0 | 3.78 | 1.11 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | CLE | pitcher | Starter | Gavin Williams | neutral | 2 | 1 | 1 | 1 | 1 | predicted_SO | 3.0000 | boost | better |
| away | NYY | batter | RF | Spencer Jones | worse | 9 | 3 | 6 | 4 | 5 | predicted_BB | 1.6900 | boost | better |
| home | CLE | batter | RF | Angel Martínez | worse | 10 | 3 | 7 | 2 | 8 | predicted_H | 1.6800 | boost | better |
| away | NYY | batter | 3B | Ryan McMahon | better | 11 | 5 | 6 | 6 | 5 | predicted_RBI | 1.6600 | boost | better |
| away | NYY | batter | DH | Paul Goldschmidt | better | 11 | 7 | 4 | 6 | 5 | predicted_BB | 1.5950 | boost | better |
| home | CLE | batter | 3B | José Ramírez | worse | 9 | 3 | 6 | 2 | 7 | predicted_SO | 1.4440 | boost | worse |
| home | CLE | batter | 2B | Travis Bazzana | worse | 9 | 3 | 6 | 2 | 7 | predicted_SO | 1.2480 | boost | worse |
| away | NYY | batter | 2B | Jazz Chisholm Jr. | worse | 10 | 4 | 6 | 3 | 7 | predicted_AB | 1.2200 | boost | better |
| away | NYY | batter | LF | Cody Bellinger | worse | 11 | 4 | 7 | 5 | 6 | predicted_AB | 1.1600 | boost | better |
| away | NYY | pitcher | Starter | Will Warren | neutral | 2 | 1 | 1 | 1 | 1 | predicted_SO | 1.0000 | boost | better |
| away | NYY | pitcher | Middle Reliever | Fernando Cruz | worse | 1 | 0 | 1 | 0 | 1 | predicted_SO | -1.0000 | deboost | worse |
| home | CLE | pitcher | Middle Reliever | Cade Smith | worse | 1 | 0 | 1 | 0 | 1 | predicted_SO | -1.0000 | deboost | worse |
| home | CLE | pitcher | Middle Reliever | Hunter Gaddis | worse | 1 | 0 | 1 | 0 | 1 | predicted_SO | -1.0000 | deboost | worse |
| home | CLE | pitcher | Middle Reliever | Colin Holderman | worse | 2 | 0 | 2 | 0 | 2 | predicted_SO | -1.0000 | deboost | worse |
| away | NYY | batter | 1B | Ben Rice | worse | 10 | 5 | 5 | 4 | 6 | predicted_AB | 0.9800 | boost | better |
| home | CLE | batter | C | Patrick Bailey | worse | 10 | 1 | 9 | 2 | 8 | predicted_AB | 0.9470 | boost | better |
| away | NYY | batter | CF | Trent Grisham | worse | 11 | 3 | 8 | 4 | 7 | predicted_H | -0.9400 | deboost | worse |
| home | CLE | batter | CF | Daniel Schneemann | better | 10 | 6 | 4 | 7 | 3 | predicted_HR | 0.9200 | boost | better |
| away | NYY | batter | SS | José Caballero | worse | 10 | 2 | 8 | 3 | 7 | predicted_BB | 0.8130 | boost | better |
| home | CLE | batter | SS | Brayan Rocchio | worse | 11 | 0 | 11 | 1 | 10 | predicted_H | -0.7200 | deboost | worse |
| home | CLE | batter | LF | Steven Kwan | worse | 11 | 2 | 9 | 3 | 8 | predicted_BB | -0.6410 | deboost | worse |
| away | NYY | batter | C | J.C. Escarra | worse | 11 | 4 | 7 | 3 | 8 | predicted_AB | 0.6030 | boost | better |
| home | CLE | batter | 1B | Kyle Manzardo | worse | 11 | 1 | 10 | 2 | 9 | predicted_AB | -0.5570 | deboost | worse |
| home | CLE | batter | DH | Chase DeLauter | worse | 9 | 0 | 9 | 1 | 8 | predicted_SO | -0.5160 | deboost | better |
| home | CLE | pitcher | Middle Reliever | Shawn Armstrong | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| away | NYY | pitcher | Middle Reliever | Brent Headrick | 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 | Will Warren |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.2102 |
| ESPN Rank | 127 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0571 |
| Avg Velo | 90.7294 |
| Avg Spin | 2558.6240 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 1 |
| Pre H | 6 |
| Pre BB | 1 |
| Pre SO | 5 |
| Season ERA | 3.2176 |
| Season WHIP | 1.1969 |
| Role Avg IP | 5.3610 |
| Recent Avg IP | 5.3330 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"opponent": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"edges": {
"quality_edge": 0.1592,
"offense_edge": 0.0696,
"opponent_offense_edge": -0.0392,
"defense_strength": 0.2396,
"opponent_defense_weakness": -0.0574,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0151,
"run_prevention": 0.9618,
"strikeout": 1.0079
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "701542",
"profile": {
"available": true,
"pitcher_id": "701542",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 243.0,
"k_percent": 25.8,
"bb_percent": 7.0,
"woba": 0.29,
"xwoba": 0.29,
"sweet_spot_percent": 33.7,
"barrel_batted_rate": 6.6,
"hard_hit_percent": 39.8,
"avg_best_speed": 79.969,
"avg_hyper_speed": 94.8046,
"whiff_percent": 24.1,
"swing_percent": 44.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.2821,
"command_and_miss": 0.2064,
"regression_edge": 0.0,
"xwoba_edge": 0.7,
"barrel_edge": 0.1111,
"hard_hit_edge": -0.1714,
"whiff_edge": -0.2429,
"bb_edge": 0.525,
"pitch_design_score": 0.0571
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "701542",
"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": 90.72936883668802,
"release_spin_rate": 2558.6240018575522,
"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": 90.72936883668802,
"release_spin_rate": 2558.6240018575522,
"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.7294,
"release_spin_rate": 2558.624,
"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.0571,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4077,
"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.2102,
"sample_weight": 0.972,
"run_prevention_factor": 0.9821,
"strikeout_factor": 1.0067,
"walk_factor": 0.9592,
"homer_factor": 0.9776,
"woba_minus_xwoba": 0.0,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "701542",
"espn_id": 5132011,
"player_name": "Will Warren",
"team": "NYY",
"role": "pitcher",
"espn_rank": 127,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 127,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 5.0,
"qs_rank": 39,
"era_value": 3.2176,
"era_rank": 24.0,
"w_value": 7.0,
"w_rank": 6,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 64.1,
"ip_rank": 69,
"h_value": 58.0,
"h_rank": 79,
"er_value": 23.0,
"er_rank": 106,
"hr_value": 7.0,
"hr_rank": 84,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 70.0,
"k_rank": 35,
"k_per_9_value": 9.792747,
"k_per_9_rank": 13,
"whip_value": 1.1968,
"whip_rank": 40.0,
"war_value": 0.73,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 0.9826,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 0.9826,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9603,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 0.9782,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0065,
"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": 49.2,
"ER": 18,
"H": 44,
"BB": 14,
"SO": 56,
"HR": 5,
"ERA": 3.261744966442953,
"WHIP": 1.167785234899329,
"K9": 10.14765100671141,
"HR9": 0.9060402684563759,
"games_pitched": 9,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "701542",
"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": 90.72936883668802,
"release_spin_rate": 2558.6240018575522,
"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": 90.72936883668802,
"release_spin_rate": 2558.6240018575522,
"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.7294,
"release_spin_rate": 2558.624,
"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.0571,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4077,
"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": "701542",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 26.2,
"ER": 13.0,
"R": 16.0,
"H": 26.0,
"BB": 11.0,
"SO": 24.0,
"HR": 3.0,
"BF": 119.0,
"Pitches": 439.0
},
"per_game": {
"IP": 5.1,
"ER": 2.6,
"R": 3.2,
"H": 5.2,
"BB": 2.2,
"SO": 4.8,
"HR": 0.6,
"BF": 23.8,
"Pitches": 87.8
},
"rates": {
"ERA": 4.3875,
"WHIP": 1.3875,
"ER_per_IP": 0.4875,
"H_per_IP": 0.975,
"BB_per_IP": 0.4125,
"SO_per_IP": 0.9,
"HR_per_IP": 0.1125
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 54.1,
"ER": 20.0,
"R": 28.0,
"H": 49.0,
"BB": 17.0,
"SO": 61.0,
"HR": 5.0,
"BF": 231.0,
"Pitches": 895.0
},
"per_game": {
"IP": 5.1,
"ER": 2.0,
"R": 2.8,
"H": 4.9,
"BB": 1.7,
"SO": 6.1,
"HR": 0.5,
"BF": 23.1,
"Pitches": 89.5
},
"rates": {
"ERA": 3.3129,
"WHIP": 1.2147,
"ER_per_IP": 0.3681,
"H_per_IP": 0.90184,
"BB_per_IP": 0.31288,
"SO_per_IP": 1.1227,
"HR_per_IP": 0.09202
}
},
"season": {
"games": 12,
"totals": {
"IP": 64.1,
"ER": 23.0,
"R": 31.0,
"H": 58.0,
"BB": 19.0,
"SO": 70.0,
"HR": 7.0,
"BF": 271.0,
"Pitches": 1055.0
},
"per_game": {
"IP": 5.1,
"ER": 1.9167,
"R": 2.5833,
"H": 4.8333,
"BB": 1.5833,
"SO": 5.8333,
"HR": 0.5833,
"BF": 22.5833,
"Pitches": 87.9167
},
"rates": {
"ERA": 3.2176,
"WHIP": 1.1969,
"ER_per_IP": 0.35751,
"H_per_IP": 0.90155,
"BB_per_IP": 0.29534,
"SO_per_IP": 1.08808,
"HR_per_IP": 0.10881
}
}
},
"weighted_prediction": {
"predicted_IP": 5.1,
"predicted_ER": 2.384,
"predicted_H": 5.113,
"predicted_BB": 1.94,
"predicted_SO": 5.386,
"predicted_HR": 0.623,
"predicted_ERA": 3.9497,
"predicted_WHIP": 1.2986
}
}{
"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.1,
"final": 5.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.384,
"final": 1.7276,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 5.113,
"final": 5.5337,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.94,
"final": 1.4942,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 5.386,
"final": 4.7287,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.623,
"final": 0.8018,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9497,
"final": 3.9497,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2986,
"final": 1.2986,
"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.3114 |
| ESPN Rank | 492 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0415 |
| Avg Velo | 88.9683 |
| Avg Spin | 2155.9759 |
| 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 | 4.1538 |
| Season WHIP | 1.4615 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"opponent": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"edges": {
"quality_edge": 0.1592,
"offense_edge": 0.0696,
"opponent_offense_edge": -0.0392,
"defense_strength": 0.2396,
"opponent_defense_weakness": -0.0574,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0151,
"run_prevention": 0.9618,
"strikeout": 1.0079
},
"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": 25.6,
"bb_percent": 9.4,
"woba": 0.318,
"xwoba": 0.267,
"sweet_spot_percent": 18.7,
"barrel_batted_rate": 4.0,
"hard_hit_percent": 40.0,
"avg_best_speed": 75.4147,
"avg_hyper_speed": 93.6972,
"whiff_percent": 29.6,
"swing_percent": 52.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8196,
"command_and_miss": 0.3486,
"regression_edge": 1.4571,
"xwoba_edge": 1.3571,
"barrel_edge": 0.6889,
"hard_hit_edge": -0.2,
"whiff_edge": 0.5429,
"bb_edge": -0.075,
"pitch_design_score": -0.0415
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "670280",
"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": 88.96828226332995,
"release_spin_rate": 2155.975886538087,
"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": 88.96828226332995,
"release_spin_rate": 2155.975886538087,
"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.9683,
"release_spin_rate": 2155.9759,
"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.0415,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2968,
"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.3114,
"sample_weight": 0.45,
"run_prevention_factor": 0.9735,
"strikeout_factor": 1.0167,
"walk_factor": 1.0027,
"homer_factor": 0.9605,
"woba_minus_xwoba": 0.051,
"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": 492,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 492,
"gp_value": 26.0,
"gp_rank": 74,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.1538,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 13.0,
"sv_rank": 7,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 26.0,
"ip_rank": 261,
"h_value": 27.0,
"h_rank": 198,
"er_value": 12.0,
"er_rank": 234,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 11.0,
"bb_rank": 236,
"k_value": 30.0,
"k_rank": 207,
"k_per_9_value": 10.384616,
"k_per_9_rank": 21,
"whip_value": 1.4615,
"whip_rank": null,
"war_value": -0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9881,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9881,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0012,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9822,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0075,
"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": 9,
"BB": 6,
"SO": 11,
"HR": 2,
"ERA": 5.586206896551724,
"WHIP": 1.5517241379310345,
"K9": 10.241379310344827,
"HR9": 1.8620689655172415,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "670280",
"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": 88.96828226332995,
"release_spin_rate": 2155.975886538087,
"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": 88.96828226332995,
"release_spin_rate": 2155.975886538087,
"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.9683,
"release_spin_rate": 2155.9759,
"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.0415,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2968,
"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.134,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5066,
"prior_weight": 0.4934
},
"role": "pitcher",
"player_id": "670280",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 26,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 76.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 3.8,
"Pitches": 15.2
},
"rates": {
"ERA": 0.0,
"WHIP": 0.8,
"ER_per_IP": 0.0,
"H_per_IP": 0.4,
"BB_per_IP": 0.4,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 6.0,
"R": 6.0,
"H": 9.0,
"BB": 6.0,
"SO": 11.0,
"HR": 2.0,
"BF": 43.0,
"Pitches": 178.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.9,
"BB": 0.6,
"SO": 1.1,
"HR": 0.2,
"BF": 4.3,
"Pitches": 17.8
},
"rates": {
"ERA": 5.5862,
"WHIP": 1.5517,
"ER_per_IP": 0.62069,
"H_per_IP": 0.93103,
"BB_per_IP": 0.62069,
"SO_per_IP": 1.13793,
"HR_per_IP": 0.2069
}
},
"season": {
"games": 26,
"totals": {
"IP": 26.0,
"ER": 12.0,
"R": 15.0,
"H": 27.0,
"BB": 11.0,
"SO": 30.0,
"HR": 2.0,
"BF": 117.0,
"Pitches": 489.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4615,
"R": 0.5769,
"H": 1.0385,
"BB": 0.4231,
"SO": 1.1538,
"HR": 0.0769,
"BF": 4.5,
"Pitches": 18.8077
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.4615,
"ER_per_IP": 0.46154,
"H_per_IP": 1.03846,
"BB_per_IP": 0.42308,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.07692
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.396,
"predicted_H": 0.834,
"predicted_BB": 0.424,
"predicted_SO": 1.008,
"predicted_HR": 0.113,
"predicted_ERA": 3.5643,
"predicted_WHIP": 1.2578
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5585,
"form_weight": 0.4415,
"form_reliability": 0.5066,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.134,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5066,
"prior_weight": 0.4934
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.396,
"final": 0.1748,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.834,
"final": 0.9267,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.424,
"final": 0.1872,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.008,
"final": 0.4451,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.113,
"final": 0.0499,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5643,
"final": 3.5643,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2578,
"final": 1.2578,
"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.3243 |
| ESPN Rank | 83 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 84.6909 |
| Avg Spin | 1488.6102 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 1.9518 |
| Season WHIP | 1.1928 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"opponent": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"edges": {
"quality_edge": 0.1592,
"offense_edge": 0.0696,
"opponent_offense_edge": -0.0392,
"defense_strength": 0.2396,
"opponent_defense_weakness": -0.0574,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0151,
"run_prevention": 0.9618,
"strikeout": 1.0079
},
"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": 28.9,
"bb_percent": 12.3,
"woba": 0.275,
"xwoba": 0.282,
"sweet_spot_percent": 30.8,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 24.6,
"avg_best_speed": 74.2423,
"avg_hyper_speed": 92.6004,
"whiff_percent": 41.5,
"swing_percent": 43.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8935,
"command_and_miss": 1.0107,
"regression_edge": -0.2,
"xwoba_edge": 0.9286,
"barrel_edge": 0.2,
"hard_hit_edge": 2.0,
"whiff_edge": 2.2429,
"bb_edge": -0.8,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "518585",
"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": 84.69090097804407,
"release_spin_rate": 1488.6102269016806,
"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": 84.69090097804407,
"release_spin_rate": 1488.6102269016806,
"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.6909,
"release_spin_rate": 1488.6102,
"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.3243,
"sample_weight": 0.45,
"run_prevention_factor": 0.9724,
"strikeout_factor": 1.0558,
"walk_factor": 1.0288,
"homer_factor": 0.9443,
"woba_minus_xwoba": -0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "518585",
"espn_id": 34068,
"player_name": "Fernando Cruz",
"team": "NYY",
"role": "pitcher",
"espn_rank": 83,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 83,
"gp_value": 31.0,
"gp_rank": 7,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.9518,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 11.0,
"hld_rank": 8,
"ip_value": 27.2,
"ip_rank": 237,
"h_value": 19.0,
"h_rank": 301,
"er_value": 6.0,
"er_rank": 425,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 14.0,
"bb_rank": 182,
"k_value": 33.0,
"k_rank": 181,
"k_per_9_value": 10.73494,
"k_per_9_rank": 20,
"whip_value": 1.1927,
"whip_rank": null,
"war_value": 1.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9876,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9876,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.013,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9749,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0251,
"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": 5,
"BB": 3,
"SO": 8,
"HR": 0,
"ERA": 0.9310344827586208,
"WHIP": 0.8275862068965518,
"K9": 7.448275862068966,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "518585",
"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": 84.69090097804407,
"release_spin_rate": 1488.6102269016806,
"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": 84.69090097804407,
"release_spin_rate": 1488.6102269016806,
"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.6909,
"release_spin_rate": 1488.6102,
"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": 5.463,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5221,
"prior_weight": 0.4779
},
"role": "pitcher",
"player_id": "518585",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 0.0,
"SO": 3.0,
"HR": 0.0,
"BF": 16.0,
"Pitches": 55.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.0,
"SO": 0.6,
"HR": 0.0,
"BF": 3.2,
"Pitches": 11.0
},
"rates": {
"ERA": 1.9286,
"WHIP": 0.6429,
"ER_per_IP": 0.21429,
"H_per_IP": 0.64286,
"BB_per_IP": 0.0,
"SO_per_IP": 0.64286,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 3.0,
"SO": 8.0,
"HR": 0.0,
"BF": 35.0,
"Pitches": 129.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.3,
"SO": 0.8,
"HR": 0.0,
"BF": 3.5,
"Pitches": 12.9
},
"rates": {
"ERA": 0.931,
"WHIP": 0.8276,
"ER_per_IP": 0.10345,
"H_per_IP": 0.51724,
"BB_per_IP": 0.31034,
"SO_per_IP": 0.82759,
"HR_per_IP": 0.0
}
},
"season": {
"games": 31,
"totals": {
"IP": 27.2,
"ER": 6.0,
"R": 7.0,
"H": 19.0,
"BB": 14.0,
"SO": 33.0,
"HR": 2.0,
"BF": 114.0,
"Pitches": 446.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1935,
"R": 0.2258,
"H": 0.6129,
"BB": 0.4516,
"SO": 1.0645,
"HR": 0.0645,
"BF": 3.6774,
"Pitches": 14.3871
},
"rates": {
"ERA": 1.9518,
"WHIP": 1.1928,
"ER_per_IP": 0.21687,
"H_per_IP": 0.68675,
"BB_per_IP": 0.50602,
"SO_per_IP": 1.19277,
"HR_per_IP": 0.07229
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.324,
"predicted_H": 0.775,
"predicted_BB": 0.284,
"predicted_SO": 0.873,
"predicted_HR": 0.074,
"predicted_ERA": 2.9123,
"predicted_WHIP": 1.0586
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5519,
"form_weight": 0.4481,
"form_reliability": 0.5221,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.463,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5221,
"prior_weight": 0.4779
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.324,
"final": 0.1452,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.775,
"final": 0.3473,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.284,
"final": 0.1273,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.873,
"final": 1.495,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.074,
"final": 0.0332,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.9123,
"final": 2.9123,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0586,
"final": 1.0586,
"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 | Tim Hill |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2031 |
| ESPN Rank | 416 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1359 |
| Avg Velo | 87.2831 |
| Avg Spin | 2059.3092 |
| 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.2400 |
| Season WHIP | 1.1200 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"opponent": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"edges": {
"quality_edge": 0.1592,
"offense_edge": 0.0696,
"opponent_offense_edge": -0.0392,
"defense_strength": 0.2396,
"opponent_defense_weakness": -0.0574,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0151,
"run_prevention": 0.9618,
"strikeout": 1.0079
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "657612",
"profile": {
"available": true,
"pitcher_id": "657612",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 85.0,
"k_percent": 12.1,
"bb_percent": 5.6,
"woba": 0.314,
"xwoba": 0.334,
"sweet_spot_percent": 23.3,
"barrel_batted_rate": 4.7,
"hard_hit_percent": 44.2,
"avg_best_speed": 77.5383,
"avg_hyper_speed": 95.3699,
"whiff_percent": 13.3,
"swing_percent": 52.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1532,
"command_and_miss": -1.1443,
"regression_edge": -0.5714,
"xwoba_edge": -0.5571,
"barrel_edge": 0.5333,
"hard_hit_edge": -0.8,
"whiff_edge": -1.7857,
"bb_edge": 0.875,
"pitch_design_score": -0.1359
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "657612",
"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": 87.28311222274458,
"release_spin_rate": 2059.3091647731353,
"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": 87.28311222274458,
"release_spin_rate": 2059.3091647731353,
"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.2831,
"release_spin_rate": 2059.3092,
"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.9708,
"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.2031,
"sample_weight": 0.45,
"run_prevention_factor": 1.0173,
"strikeout_factor": 0.9401,
"walk_factor": 0.9685,
"homer_factor": 1.0027,
"woba_minus_xwoba": -0.02,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657612",
"espn_id": 37005,
"player_name": "Tim Hill",
"team": "NYY",
"role": "pitcher",
"espn_rank": 416,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 416,
"gp_value": 30.0,
"gp_rank": 19,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.32,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 8.0,
"hld_rank": 30,
"ip_value": 25.0,
"ip_rank": 285,
"h_value": 26.0,
"h_rank": 214,
"er_value": 12.0,
"er_rank": 234,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 6.0,
"bb_rank": 402,
"k_value": 13.0,
"k_rank": 416,
"k_per_9_value": 4.6800003,
"k_per_9_rank": 39,
"whip_value": 1.28,
"whip_rank": null,
"war_value": -0.03,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0078,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0078,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9858,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0012,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.973,
"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.0,
"ER": 7,
"H": 11,
"BB": 3,
"SO": 6,
"HR": 2,
"ERA": 9.000000000000002,
"WHIP": 2.0000000000000004,
"K9": 7.714285714285715,
"HR9": 2.5714285714285716,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "657612",
"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": 87.28311222274458,
"release_spin_rate": 2059.3091647731353,
"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": 87.28311222274458,
"release_spin_rate": 2059.3091647731353,
"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.2831,
"release_spin_rate": 2059.3092,
"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.9708,
"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.937,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4968,
"prior_weight": 0.5032
},
"role": "pitcher",
"player_id": "657612",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 6.0,
"R": 6.0,
"H": 8.0,
"BB": 1.0,
"SO": 3.0,
"HR": 2.0,
"BF": 22.0,
"Pitches": 74.0
},
"per_game": {
"IP": 1.0,
"ER": 1.2,
"R": 1.2,
"H": 1.6,
"BB": 0.2,
"SO": 0.6,
"HR": 0.4,
"BF": 4.4,
"Pitches": 14.8
},
"rates": {
"ERA": 12.4615,
"WHIP": 2.0769,
"ER_per_IP": 1.38462,
"H_per_IP": 1.84615,
"BB_per_IP": 0.23077,
"SO_per_IP": 0.69231,
"HR_per_IP": 0.46154
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.2,
"ER": 7.0,
"R": 8.0,
"H": 11.0,
"BB": 3.0,
"SO": 6.0,
"HR": 2.0,
"BF": 39.0,
"Pitches": 139.0
},
"per_game": {
"IP": 0.2,
"ER": 0.7,
"R": 0.8,
"H": 1.1,
"BB": 0.3,
"SO": 0.6,
"HR": 0.2,
"BF": 3.9,
"Pitches": 13.9
},
"rates": {
"ERA": 8.2174,
"WHIP": 1.8261,
"ER_per_IP": 0.91304,
"H_per_IP": 1.43478,
"BB_per_IP": 0.3913,
"SO_per_IP": 0.78261,
"HR_per_IP": 0.26087
}
},
"season": {
"games": 29,
"totals": {
"IP": 25.0,
"ER": 9.0,
"R": 10.0,
"H": 23.0,
"BB": 5.0,
"SO": 13.0,
"HR": 3.0,
"BF": 102.0,
"Pitches": 330.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3103,
"R": 0.3448,
"H": 0.7931,
"BB": 0.1724,
"SO": 0.4483,
"HR": 0.1034,
"BF": 3.5172,
"Pitches": 11.3793
},
"rates": {
"ERA": 3.24,
"WHIP": 1.12,
"ER_per_IP": 0.36,
"H_per_IP": 0.92,
"BB_per_IP": 0.2,
"SO_per_IP": 0.52,
"HR_per_IP": 0.12
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.705,
"predicted_H": 1.164,
"predicted_BB": 0.304,
"predicted_SO": 0.766,
"predicted_HR": 0.217,
"predicted_ERA": 6.7323,
"predicted_WHIP": 1.5583
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5626,
"form_weight": 0.4374,
"form_reliability": 0.4968,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.937,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4968,
"prior_weight": 0.5032
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.705,
"final": 0.3084,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.164,
"final": 0.5091,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.304,
"final": 0.133,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.766,
"final": 1.4603,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.217,
"final": 0.0949,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.7323,
"final": 6.7323,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5583,
"final": 1.5583,
"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 | Brent Headrick |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1122 |
| ESPN Rank | 69 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0160 |
| Avg Velo | 89.9962 |
| Avg Spin | 2216.7002 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.7802 |
| Season WHIP | 1.3187 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"opponent": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"edges": {
"quality_edge": 0.1592,
"offense_edge": 0.0696,
"opponent_offense_edge": -0.0392,
"defense_strength": 0.2396,
"opponent_defense_weakness": -0.0574,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0151,
"run_prevention": 0.9618,
"strikeout": 1.0079
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "687396",
"profile": {
"available": true,
"pitcher_id": "687396",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 108.0,
"k_percent": 26.4,
"bb_percent": 9.3,
"woba": 0.302,
"xwoba": 0.292,
"sweet_spot_percent": 39.8,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 41.0,
"avg_best_speed": 80.2682,
"avg_hyper_speed": 94.4443,
"whiff_percent": 30.6,
"swing_percent": 52.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1807,
"command_and_miss": 0.455,
"regression_edge": 0.2857,
"xwoba_edge": 0.6429,
"barrel_edge": 0.5111,
"hard_hit_edge": -0.3429,
"whiff_edge": 0.6857,
"bb_edge": -0.05,
"pitch_design_score": 0.016
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "687396",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 89.9961550851046,
"release_spin_rate": 2216.700219827727,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 89.9961550851046,
"release_spin_rate": 2216.700219827727,
"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.9962,
"release_spin_rate": 2216.7002,
"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.016,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1144,
"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.1122,
"sample_weight": 0.45,
"run_prevention_factor": 0.9905,
"strikeout_factor": 1.0213,
"walk_factor": 1.0018,
"homer_factor": 0.9791,
"woba_minus_xwoba": 0.01,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687396",
"espn_id": 5116839,
"player_name": "Brent Headrick",
"team": "NYY",
"role": "pitcher",
"espn_rank": 69,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 69,
"gp_value": 31.0,
"gp_rank": 7,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.7802,
"era_rank": null,
"w_value": 4.0,
"w_rank": 52,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 30.1,
"ip_rank": 193,
"h_value": 28.0,
"h_rank": 193,
"er_value": 6.0,
"er_rank": 425,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 12.0,
"bb_rank": 219,
"k_value": 34.0,
"k_rank": 170,
"k_per_9_value": 10.087912,
"k_per_9_rank": 23,
"whip_value": 1.3186,
"whip_rank": null,
"war_value": 1.11,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9957,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9957,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0008,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9906,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0096,
"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": 10,
"BB": 4,
"SO": 12,
"HR": 1,
"ERA": 1.9285714285714288,
"WHIP": 1.5000000000000002,
"K9": 11.571428571428573,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "687396",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 89.9961550851046,
"release_spin_rate": 2216.700219827727,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 89.9961550851046,
"release_spin_rate": 2216.700219827727,
"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.9962,
"release_spin_rate": 2216.7002,
"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.016,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1144,
"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.99,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.545,
"prior_weight": 0.455
},
"role": "pitcher",
"player_id": "687396",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 0.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 3.0,
"SO": 5.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 84.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.8,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 3.8,
"Pitches": 16.8
},
"rates": {
"ERA": 0.0,
"WHIP": 1.6154,
"ER_per_IP": 0.0,
"H_per_IP": 0.92308,
"BB_per_IP": 0.69231,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 2.0,
"R": 2.0,
"H": 10.0,
"BB": 4.0,
"SO": 12.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 169.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.4,
"SO": 1.2,
"HR": 0.1,
"BF": 4.1,
"Pitches": 16.9
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.5,
"ER_per_IP": 0.21429,
"H_per_IP": 1.07143,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 31,
"totals": {
"IP": 30.1,
"ER": 6.0,
"R": 7.0,
"H": 28.0,
"BB": 12.0,
"SO": 34.0,
"HR": 2.0,
"BF": 129.0,
"Pitches": 488.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1935,
"R": 0.2258,
"H": 0.9032,
"BB": 0.3871,
"SO": 1.0968,
"HR": 0.0645,
"BF": 4.1613,
"Pitches": 15.7419
},
"rates": {
"ERA": 1.7802,
"WHIP": 1.3187,
"ER_per_IP": 0.1978,
"H_per_IP": 0.92308,
"BB_per_IP": 0.3956,
"SO_per_IP": 1.12088,
"HR_per_IP": 0.06593
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.197,
"predicted_H": 0.674,
"predicted_BB": 0.321,
"predicted_SO": 0.749,
"predicted_HR": 0.063,
"predicted_ERA": 2.5473,
"predicted_WHIP": 1.4275
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5422,
"form_weight": 0.4578,
"form_reliability": 0.545,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.99,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.545,
"prior_weight": 0.455
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.197,
"final": 0.0902,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.674,
"final": 0.3085,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.321,
"final": 0.1469,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.749,
"final": 0.3429,
"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.5473,
"final": 2.5473,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4275,
"final": 1.4275,
"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.227 | 0.000 | 0.000 | Hitting_2B | 0.226 | 0.000 | -0.226 | 0.000 |
| predicted_3B | 0.058 | 0.000 | 0.000 | Hitting_3B | 0.058 | 0.000 | -0.058 | 0.000 |
| predicted_AB | 3.840 | 5.000 | 7.000 | Hitting_AB | 3.642 | 4.000 | 1.358 | 1.000 |
| predicted_AVG | 0.251 | 0.200 | 0.286 | Hitting_AVG | 0.273 | 0.500 | -0.073 | -0.300 |
| predicted_BB | 0.657 | 0.000 | 1.000 | Hitting_BB | 0.654 | 0.000 | -0.654 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_H | 0.960 | 1.000 | 2.000 | Hitting_H | 0.996 | 2.000 | 0.004 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.152 | 1.000 | -0.152 | -1.000 |
| predicted_OBP | 0.337 | 0.200 | 0.375 | Hitting_OBP | 0.378 | 0.500 | -0.178 | -0.300 |
| predicted_R | 0.640 | 0.000 | 1.000 | Hitting_R | 0.638 | 1.000 | -0.638 | -1.000 |
| predicted_RBI | 0.620 | 0.000 | 1.000 | Hitting_RBI | 0.675 | 1.000 | -0.675 | -1.000 |
| predicted_SLG | 0.438 | 0.200 | 0.286 | Hitting_SLG | 0.493 | 1.250 | -0.293 | -1.050 |
| predicted_SO | 0.558 | 0.000 | 1.000 | Hitting_SO | 0.556 | 1.000 | -0.556 | -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 | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.8400 -> 5.0000 (boost 1.1600, better) |
| Biggest Deboost | predicted_BB: 0.6570 -> 0.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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.8400 -> 6.5545 (boost 2.7145, 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_OBP: 0.3420 -> 0.3636 (boost 0.0216, 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 | 2 | 4 | predicted_AB: 6.5545 -> 7.0000 (boost 0.4455, better) | predicted_2B: 0.2990 -> 0.0000 (deboost -0.2990, worse) | AB rounded to 7 (raw=6.55), rates preserved: AVG=0.265 HR/AB=0.042 |
| 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 | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2649 -> 0.2860 (boost 0.0211, better) | predicted_SLG: 0.4594 -> 0.2860 (deboost -0.1734, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4594 (boost 0.1734, better) | predicted_AVG: 0.2860 -> 0.2649 (deboost -0.0211, 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.227,
"predicted_3B": 0.058,
"predicted_AB": 3.84,
"predicted_AVG": 0.251,
"predicted_BB": 0.657,
"predicted_H": 0.96,
"predicted_HR": 0.15,
"predicted_OBP": 0.337,
"predicted_R": 0.64,
"predicted_RBI": 0.62,
"predicted_SLG": 0.438,
"predicted_SO": 0.558
},
"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.299,
"predicted_3B": 0.0752,
"predicted_AB": 6.5545,
"predicted_AVG": 0.2588,
"predicted_BB": 1.0097,
"predicted_H": 1.721,
"predicted_HBP": 0.002,
"predicted_HR": 0.2724,
"predicted_OBP": 0.342,
"predicted_R": 0.9746,
"predicted_RBI": 1.1159,
"predicted_SLG": 0.4458,
"predicted_SO": 1.011
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.299,
"delta": 0.072,
"percent_delta": 0.3172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.058,
"after": 0.0752,
"delta": 0.0172,
"percent_delta": 0.2966,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.84,
"after": 6.5545,
"delta": 2.7145,
"percent_delta": 0.7069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2588,
"delta": 0.0078,
"percent_delta": 0.0311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.657,
"after": 1.0097,
"delta": 0.3527,
"percent_delta": 0.5368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.721,
"delta": 0.761,
"percent_delta": 0.7927,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2724,
"delta": 0.1224,
"percent_delta": 0.816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.64,
"after": 0.9746,
"delta": 0.3346,
"percent_delta": 0.5228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.62,
"after": 1.1159,
"delta": 0.4959,
"percent_delta": 0.7998,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.438,
"after": 0.4458,
"delta": 0.0078,
"percent_delta": 0.0178,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.558,
"after": 1.011,
"delta": 0.453,
"percent_delta": 0.8118,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.84,
"after": 6.5545,
"delta": 2.7145,
"percent_delta": 0.7069,
"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": 9,
"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.299,
"predicted_3B": 0.0752,
"predicted_AB": 6.5545,
"predicted_AVG": 0.2649,
"predicted_BB": 1.0174,
"predicted_H": 1.736,
"predicted_HBP": 0.002,
"predicted_HR": 0.2753,
"predicted_OBP": 0.3636,
"predicted_R": 0.9912,
"predicted_RBI": 1.1349,
"predicted_SLG": 0.4594,
"predicted_SO": 1.0033
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.299,
"after": 0.299,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0752,
"after": 0.0752,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.5545,
"after": 6.5545,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2588,
"after": 0.2649,
"delta": 0.0061,
"percent_delta": 0.0236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0097,
"after": 1.0174,
"delta": 0.0077,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.721,
"after": 1.736,
"delta": 0.015,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.002,
"after": 0.002,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2724,
"after": 0.2753,
"delta": 0.0029,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.3636,
"delta": 0.0216,
"percent_delta": 0.0632,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9746,
"after": 0.9912,
"delta": 0.0166,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1159,
"after": 1.1349,
"delta": 0.019,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4458,
"after": 0.4594,
"delta": 0.0136,
"percent_delta": 0.0305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.011,
"after": 1.0033,
"delta": -0.0077,
"percent_delta": -0.0076,
"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.342,
"after": 0.3636,
"delta": 0.0216,
"percent_delta": 0.0632,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.55), rates preserved: AVG=0.265 HR/AB=0.042",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.299,
"after": 0.0,
"delta": -0.299,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0752,
"after": 0.0,
"delta": -0.0752,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.5545,
"after": 7.0,
"delta": 0.4455,
"percent_delta": 0.068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0174,
"after": 1.0,
"delta": -0.0174,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.736,
"after": 2.0,
"delta": 0.264,
"percent_delta": 0.1521,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.002,
"after": 0.0,
"delta": -0.002,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2753,
"after": 0.0,
"delta": -0.2753,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1349,
"after": 1.0,
"delta": -0.1349,
"percent_delta": -0.1189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0033,
"after": 1.0,
"delta": -0.0033,
"percent_delta": -0.0033,
"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": 6.5545,
"after": 7.0,
"delta": 0.4455,
"percent_delta": 0.068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.299,
"after": 0.0,
"delta": -0.299,
"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": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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": 7.0,
"after": 7.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": 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_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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 0.9912,
"after": 1.0,
"delta": 0.0088,
"percent_delta": 0.0089,
"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_SO",
"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": 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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2649,
"after": 0.286,
"delta": 0.0211,
"percent_delta": 0.0797,
"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": 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_OBP",
"before": 0.3636,
"after": 0.375,
"delta": 0.0114,
"percent_delta": 0.0314,
"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.4594,
"after": 0.286,
"delta": -0.1734,
"percent_delta": -0.3774,
"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.2649,
"after": 0.286,
"delta": 0.0211,
"percent_delta": 0.0797,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4594,
"after": 0.286,
"delta": -0.1734,
"percent_delta": -0.3774,
"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": 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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 0,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.2649,
"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.3636,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4594,
"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.286,
"after": 0.2649,
"delta": -0.0211,
"percent_delta": -0.0739,
"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.375,
"after": 0.3636,
"delta": -0.0114,
"percent_delta": -0.0303,
"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.286,
"after": 0.4594,
"delta": 0.1734,
"percent_delta": 0.6063,
"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.286,
"after": 0.4594,
"delta": 0.1734,
"percent_delta": 0.6063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2649,
"delta": -0.0211,
"percent_delta": -0.0739,
"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.058,
"after": 0.0,
"delta": -0.058,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.84,
"after": 5.0,
"delta": 1.16,
"percent_delta": 0.3021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2649,
"delta": 0.0139,
"percent_delta": 0.0554,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.657,
"after": 0.0,
"delta": -0.657,
"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.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.3636,
"delta": 0.0266,
"percent_delta": 0.0789,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.62,
"after": 0.0,
"delta": -0.62,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.438,
"after": 0.4594,
"delta": 0.0214,
"percent_delta": 0.0489,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.558,
"after": 0.0,
"delta": -0.558,
"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_AB",
"before": 3.84,
"after": 5.0,
"delta": 1.16,
"percent_delta": 0.3021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.657,
"after": 0.0,
"delta": -0.657,
"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.058 | - |
| predicted_AB | 3.840 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.657 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.337 | - |
| predicted_R | 0.640 | - |
| predicted_RBI | 0.620 | - |
| predicted_SLG | 0.438 | - |
| predicted_SO | 0.558 | - |
Final model 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.299 | 0.072 |
| predicted_3B | 0.075 | 0.017 |
| predicted_AB | 6.554 | 2.715 |
| predicted_AVG | 0.259 | 0.008 |
| predicted_BB | 1.010 | 0.353 |
| predicted_H | 1.721 | 0.761 |
| predicted_HBP | 0.002 | - |
| predicted_HR | 0.272 | 0.122 |
| predicted_OBP | 0.342 | 0.005 |
| predicted_R | 0.975 | 0.335 |
| predicted_RBI | 1.116 | 0.496 |
| predicted_SLG | 0.446 | 0.008 |
| predicted_SO | 1.011 | 0.453 |
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.299 | 0.000 |
| predicted_3B | 0.075 | 0.000 |
| predicted_AB | 6.554 | 0.000 |
| predicted_AVG | 0.265 | 0.006 |
| predicted_BB | 1.017 | 0.008 |
| predicted_H | 1.736 | 0.015 |
| predicted_HBP | 0.002 | 0.000 |
| predicted_HR | 0.275 | 0.003 |
| predicted_OBP | 0.364 | 0.022 |
| predicted_R | 0.991 | 0.017 |
| predicted_RBI | 1.135 | 0.019 |
| predicted_SLG | 0.459 | 0.014 |
| predicted_SO | 1.003 | -0.008 |
AB rounded to 7 (raw=6.55), rates preserved: AVG=0.265 HR/AB=0.042
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.299 |
| predicted_3B | 0.000 | -0.075 |
| predicted_AB | 7.000 | 0.446 |
| predicted_AVG | 0.286 | 0.021 |
| predicted_BB | 1.000 | -0.017 |
| predicted_H | 2.000 | 0.264 |
| predicted_HR | 0.000 | -0.275 |
| predicted_OBP | 0.375 | 0.011 |
| predicted_R | 1.000 | 0.009 |
| predicted_RBI | 1.000 | -0.135 |
| predicted_SLG | 0.286 | -0.173 |
| predicted_SO | 1.000 | -0.003 |
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 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | - | 17.000 | 5.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 1.000 | 2.000 | 0.2941 | 0.3000 | 0.4706 | 0.2941 | 0.0588 | 0.1765 | 0.0588 | 0.1177 |
| last_10 | 0.20 | 9 | - | 36.000 | 8.000 | 0.000 | 0.000 | 1.000 | 5.000 | 4.000 | 5.000 | 8.000 | 0.2222 | 0.3023 | 0.3056 | 0.2222 | 0.0278 | 0.1389 | 0.1389 | 0.2222 |
| season | 0.60 | 63 | - | 885.000 | 242.000 | 55.000 | 14.000 | 37.000 | 164.000 | 155.000 | 159.000 | 135.000 | 0.2734 | 0.3783 | 0.4927 | 0.2735 | 0.0418 | 0.1853 | 0.1797 | 0.1525 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3900 |
| predicted_3B | 0.0970 |
| predicted_AB | 9.9820 |
| predicted_AVG | 0.2687 |
| predicted_BB | 1.4550 |
| predicted_H | 2.6820 |
| predicted_HBP | 0.0020 |
| predicted_HR | 0.4270 |
| predicted_OBP | 0.3483 |
| predicted_R | 1.3970 |
| predicted_RBI | 1.7420 |
| predicted_SLG | 0.4556 |
| predicted_SO | 1.5830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2270 | 0.3900 | 0.2990 | model_form_blend |
| predicted_3B | 0.0580 | 0.0970 | 0.0752 | model_form_blend |
| predicted_AB | 3.8400 | 9.9820 | 6.5545 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2687 | 0.2588 | model_form_blend |
| predicted_BB | 0.6570 | 1.4550 | 1.0097 | model_form_blend |
| predicted_H | 0.9600 | 2.6820 | 1.7210 | model_form_blend |
| predicted_HBP | - | 0.0020 | 0.0020 | form_only |
| predicted_HR | 0.1500 | 0.4270 | 0.2724 | model_form_blend |
| predicted_OBP | 0.3370 | 0.3483 | 0.3420 | model_form_blend |
| predicted_R | 0.6400 | 1.3970 | 0.9746 | model_form_blend |
| predicted_RBI | 0.6200 | 1.7420 | 1.1159 | model_form_blend |
| predicted_SLG | 0.4380 | 0.4556 | 0.4458 | model_form_blend |
| predicted_SO | 0.5580 | 1.5830 | 1.0110 | 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 | 242 |
| 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.273 |
| 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 | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 5 |
| 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 | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 641355 |
| playerID | 641355 |
| playerName | Cody Bellinger |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 12.9 |
| sl_bb_percent | 14.4 |
| sl_woba | 0.371 |
| sl_xwoba | 0.377 |
| sl_xba | 0.29 |
| sl_xslg | 0.464 |
| sl_sweet_spot_percent | 41.1 |
| sl_barrel_batted_rate | 8.7 |
| sl_hard_hit_percent | 39.6 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 19.8 |
| sl_whiff_percent | 17.6 |
| sl_swing_percent | 43.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.189 | 0.000 | 0.000 | Hitting_2B | 0.186 | 1.000 | -0.186 | -1.000 |
| predicted_3B | 0.023 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 3.800 | 3.000 | 6.000 | Hitting_AB | 3.623 | 4.000 | -0.623 | -1.000 |
| predicted_AVG | 0.249 | 0.000 | 0.333 | Hitting_AVG | 0.215 | 0.750 | -0.215 | -0.750 |
| predicted_BB | 0.650 | 0.000 | 1.000 | Hitting_BB | 0.645 | 0.000 | -0.645 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 0.940 | 0.000 | 2.000 | Hitting_H | 0.777 | 3.000 | -0.777 | -3.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.150 | 0.000 | -0.150 | 0.000 |
| predicted_OBP | 0.348 | 0.400 | 0.429 | Hitting_OBP | 0.330 | 0.750 | 0.070 | -0.350 |
| predicted_R | 0.613 | 0.000 | 1.000 | Hitting_R | 0.609 | 1.000 | -0.609 | -1.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.614 | 1.000 | -0.614 | -1.000 |
| predicted_SLG | 0.440 | 0.000 | 0.333 | Hitting_SLG | 0.403 | 1.000 | -0.403 | -1.000 |
| predicted_SO | 0.724 | 0.000 | 1.000 | Hitting_SO | 0.714 | 0.000 | -0.714 | 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_OBP: 0.3480 -> 0.3680 (boost 0.0200, better) |
| 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.8000 -> 6.3332 (boost 2.5332, 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_OBP: 0.3569 -> 0.3680 (boost 0.0111, 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_H: 1.6724 -> 2.0000 (boost 0.3276, better) | predicted_2B: 0.3725 -> 0.0000 (deboost -0.3725, worse) | AB rounded to 6 (raw=6.33), rates preserved: AVG=0.264 HR/AB=0.042 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0719 -> 1.0000 (deboost -0.0719, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2641 -> 0.3330 (boost 0.0689, better) | predicted_SLG: 0.4585 -> 0.3330 (deboost -0.1255, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 7 | 1 | 6 | 2 | 5 | predicted_HBP: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4585 (boost 0.1255, better) | predicted_AVG: 0.3330 -> 0.2641 (deboost -0.0689, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663757",
"player_name": "Trent Grisham",
"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.189,
"predicted_3B": 0.023,
"predicted_AB": 3.8,
"predicted_AVG": 0.249,
"predicted_BB": 0.65,
"predicted_H": 0.94,
"predicted_HR": 0.16,
"predicted_OBP": 0.348,
"predicted_R": 0.613,
"predicted_RBI": 0.51,
"predicted_SLG": 0.44,
"predicted_SO": 0.724
},
"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.3725,
"predicted_3B": 0.0292,
"predicted_AB": 6.3332,
"predicted_AVG": 0.2579,
"predicted_BB": 1.0337,
"predicted_H": 1.658,
"predicted_HBP": 0.003,
"predicted_HR": 0.2641,
"predicted_OBP": 0.3569,
"predicted_R": 1.054,
"predicted_RBI": 0.9034,
"predicted_SLG": 0.451,
"predicted_SO": 0.9754
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.189,
"after": 0.3725,
"delta": 0.1835,
"percent_delta": 0.9709,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0292,
"delta": 0.0062,
"percent_delta": 0.2696,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8,
"after": 6.3332,
"delta": 2.5332,
"percent_delta": 0.6666,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2579,
"delta": 0.0089,
"percent_delta": 0.0357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.65,
"after": 1.0337,
"delta": 0.3837,
"percent_delta": 0.5903,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.658,
"delta": 0.718,
"percent_delta": 0.7638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2641,
"delta": 0.1041,
"percent_delta": 0.6506,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.3569,
"delta": 0.0089,
"percent_delta": 0.0256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.613,
"after": 1.054,
"delta": 0.441,
"percent_delta": 0.7194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.9034,
"delta": 0.3934,
"percent_delta": 0.7714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.44,
"after": 0.451,
"delta": 0.011,
"percent_delta": 0.025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.724,
"after": 0.9754,
"delta": 0.2514,
"percent_delta": 0.3472,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.8,
"after": 6.3332,
"delta": 2.5332,
"percent_delta": 0.6666,
"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": 9,
"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.3725,
"predicted_3B": 0.0292,
"predicted_AB": 6.3332,
"predicted_AVG": 0.2641,
"predicted_BB": 1.0416,
"predicted_H": 1.6724,
"predicted_HBP": 0.003,
"predicted_HR": 0.2669,
"predicted_OBP": 0.368,
"predicted_R": 1.0719,
"predicted_RBI": 0.9188,
"predicted_SLG": 0.4585,
"predicted_SO": 0.968
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3725,
"after": 0.3725,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0292,
"after": 0.0292,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.3332,
"after": 6.3332,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2579,
"after": 0.2641,
"delta": 0.0062,
"percent_delta": 0.024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0337,
"after": 1.0416,
"delta": 0.0079,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.658,
"after": 1.6724,
"delta": 0.0144,
"percent_delta": 0.0087,
"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.2641,
"after": 0.2669,
"delta": 0.0028,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3569,
"after": 0.368,
"delta": 0.0111,
"percent_delta": 0.0311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.054,
"after": 1.0719,
"delta": 0.0179,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9034,
"after": 0.9188,
"delta": 0.0154,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.451,
"after": 0.4585,
"delta": 0.0075,
"percent_delta": 0.0166,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9754,
"after": 0.968,
"delta": -0.0074,
"percent_delta": -0.0076,
"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.3569,
"after": 0.368,
"delta": 0.0111,
"percent_delta": 0.0311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.33), rates preserved: AVG=0.264 HR/AB=0.042",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3725,
"after": 0.0,
"delta": -0.3725,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0292,
"after": 0.0,
"delta": -0.0292,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.3332,
"after": 6.0,
"delta": -0.3332,
"percent_delta": -0.0526,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0416,
"after": 1.0,
"delta": -0.0416,
"percent_delta": -0.0399,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6724,
"after": 2.0,
"delta": 0.3276,
"percent_delta": 0.1959,
"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.2669,
"after": 0.0,
"delta": -0.2669,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9188,
"after": 1.0,
"delta": 0.0812,
"percent_delta": 0.0884,
"direction": "boost",
"projection_effect": "better",
"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": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.6724,
"after": 2.0,
"delta": 0.3276,
"percent_delta": 0.1959,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3725,
"after": 0.0,
"delta": -0.3725,
"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": 6.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 1.0719,
"after": 1.0,
"delta": -0.0719,
"percent_delta": -0.0671,
"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": 1.0719,
"after": 1.0,
"delta": -0.0719,
"percent_delta": -0.0671,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2641,
"after": 0.333,
"delta": 0.0689,
"percent_delta": 0.2609,
"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": 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_OBP",
"before": 0.368,
"after": 0.429,
"delta": 0.061,
"percent_delta": 0.1658,
"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.4585,
"after": 0.333,
"delta": -0.1255,
"percent_delta": -0.2737,
"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.2641,
"after": 0.333,
"delta": 0.0689,
"percent_delta": 0.2609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4585,
"after": 0.333,
"delta": -0.1255,
"percent_delta": -0.2737,
"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": 2.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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 2.0,
"delta": 2.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": 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": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_HBP",
"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": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.2641,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.368,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4585,
"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.2641,
"delta": -0.0689,
"percent_delta": -0.207,
"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": 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_OBP",
"before": 0.429,
"after": 0.368,
"delta": -0.061,
"percent_delta": -0.1422,
"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.4585,
"delta": 0.1255,
"percent_delta": 0.377,
"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.4585,
"delta": 0.1255,
"percent_delta": 0.377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2641,
"delta": -0.0689,
"percent_delta": -0.207,
"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.189,
"after": 0.0,
"delta": -0.189,
"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": 3.8,
"after": 3.0,
"delta": -0.8,
"percent_delta": -0.2105,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2641,
"delta": 0.0151,
"percent_delta": 0.0606,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"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.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.368,
"delta": 0.02,
"percent_delta": 0.0575,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.613,
"after": 0.0,
"delta": -0.613,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.44,
"after": 0.4585,
"delta": 0.0185,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.724,
"after": 0.0,
"delta": -0.724,
"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_OBP",
"before": 0.348,
"after": 0.368,
"delta": 0.02,
"percent_delta": 0.0575,
"direction": "boost",
"projection_effect": "better",
"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.189 | - |
| predicted_3B | 0.023 | - |
| predicted_AB | 3.800 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.650 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.348 | - |
| predicted_R | 0.613 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.440 | - |
| predicted_SO | 0.724 | - |
Final model 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.372 | 0.183 |
| predicted_3B | 0.029 | 0.006 |
| predicted_AB | 6.333 | 2.533 |
| predicted_AVG | 0.258 | 0.009 |
| predicted_BB | 1.034 | 0.384 |
| predicted_H | 1.658 | 0.718 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.264 | 0.104 |
| predicted_OBP | 0.357 | 0.009 |
| predicted_R | 1.054 | 0.441 |
| predicted_RBI | 0.903 | 0.393 |
| predicted_SLG | 0.451 | 0.011 |
| predicted_SO | 0.975 | 0.251 |
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.372 | 0.000 |
| predicted_3B | 0.029 | 0.000 |
| predicted_AB | 6.333 | 0.000 |
| predicted_AVG | 0.264 | 0.006 |
| predicted_BB | 1.042 | 0.008 |
| predicted_H | 1.672 | 0.014 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.267 | 0.003 |
| predicted_OBP | 0.368 | 0.011 |
| predicted_R | 1.072 | 0.018 |
| predicted_RBI | 0.919 | 0.015 |
| predicted_SLG | 0.459 | 0.008 |
| predicted_SO | 0.968 | -0.007 |
AB rounded to 6 (raw=6.33), rates preserved: AVG=0.264 HR/AB=0.042
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.372 |
| predicted_3B | 0.000 | -0.029 |
| predicted_AB | 6.000 | -0.333 |
| predicted_AVG | 0.333 | 0.069 |
| predicted_BB | 1.000 | -0.042 |
| predicted_H | 2.000 | 0.328 |
| predicted_HR | 0.000 | -0.267 |
| predicted_OBP | 0.429 | 0.061 |
| predicted_R | 1.000 | -0.072 |
| predicted_RBI | 1.000 | 0.081 |
| predicted_SLG | 0.333 | -0.126 |
| predicted_SO | 1.000 | 0.032 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.000 |
| HBP | 2.000 | 2.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 | - | 19.000 | 7.000 | 2.000 | 0.000 | 1.000 | 2.000 | 2.000 | 2.000 | 0.000 | 0.3684 | 0.4286 | 0.6316 | 0.3684 | 0.0526 | 0.1053 | 0.1053 | 0.0000 |
| last_10 | 0.20 | 9 | - | 34.000 | 12.000 | 2.000 | 0.000 | 1.000 | 4.000 | 9.000 | 6.000 | 2.000 | 0.3529 | 0.4500 | 0.5000 | 0.3529 | 0.0294 | 0.1177 | 0.1765 | 0.0588 |
| season | 0.60 | 60 | - | 797.000 | 171.000 | 41.000 | 5.000 | 33.000 | 135.000 | 133.000 | 141.000 | 157.000 | 0.2146 | 0.3291 | 0.4028 | 0.2145 | 0.0414 | 0.1694 | 0.1769 | 0.1970 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6050 |
| predicted_3B | 0.0370 |
| predicted_AB | 9.5440 |
| predicted_AVG | 0.2691 |
| predicted_BB | 1.5200 |
| predicted_H | 2.5680 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3960 |
| predicted_OBP | 0.3682 |
| predicted_R | 1.6130 |
| predicted_RBI | 1.4020 |
| predicted_SLG | 0.4649 |
| predicted_SO | 1.2940 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1890 | 0.6050 | 0.3725 | model_form_blend |
| predicted_3B | 0.0230 | 0.0370 | 0.0292 | model_form_blend |
| predicted_AB | 3.8000 | 9.5440 | 6.3332 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2691 | 0.2579 | model_form_blend |
| predicted_BB | 0.6500 | 1.5200 | 1.0337 | model_form_blend |
| predicted_H | 0.9400 | 2.5680 | 1.6580 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1600 | 0.3960 | 0.2641 | model_form_blend |
| predicted_OBP | 0.3480 | 0.3682 | 0.3569 | model_form_blend |
| predicted_R | 0.6130 | 1.6130 | 1.0540 | model_form_blend |
| predicted_RBI | 0.5100 | 1.4020 | 0.9034 | model_form_blend |
| predicted_SLG | 0.4400 | 0.4649 | 0.4510 | model_form_blend |
| predicted_SO | 0.7240 | 1.2940 | 0.9754 | 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 | 220 |
| Season rows before report date | 220 |
| Report year | 2026 |
| Profile rows used | 217 |
| 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 | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 2 |
| season_avg | 0.215 |
| 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 | 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 | 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 | CF |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 663757 |
| playerID | 663757 |
| playerName | Trent Grisham |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 16.3 |
| sl_bb_percent | 14.7 |
| sl_woba | 0.33 |
| sl_xwoba | 0.353 |
| sl_xba | 0.246 |
| sl_xslg | 0.445 |
| sl_sweet_spot_percent | 34.3 |
| sl_barrel_batted_rate | 12.4 |
| sl_hard_hit_percent | 43.8 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 17.2 |
| sl_whiff_percent | 16.6 |
| sl_swing_percent | 35.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.250 | 0.000 | 0.000 | Hitting_2B | 0.244 | 0.000 | -0.244 | 0.000 |
| predicted_3B | 0.043 | 0.000 | 0.000 | Hitting_3B | 0.042 | 0.000 | -0.042 | 0.000 |
| predicted_AB | 3.759 | 3.000 | 6.000 | Hitting_AB | 3.664 | 4.000 | -0.664 | -1.000 |
| predicted_AVG | 0.261 | 0.667 | 0.333 | Hitting_AVG | 0.284 | 0.500 | 0.382 | 0.167 |
| predicted_BB | 0.405 | 2.000 | 1.000 | Hitting_BB | 0.403 | 0.000 | 1.597 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.950 | 2.000 | 2.000 | Hitting_H | 1.042 | 2.000 | 0.958 | 0.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.210 | 0.000 | -0.210 | 0.000 |
| predicted_OBP | 0.332 | 0.800 | 0.429 | Hitting_OBP | 0.367 | 0.500 | 0.433 | 0.300 |
| predicted_R | 0.672 | 1.000 | 1.000 | Hitting_R | 0.664 | 0.000 | 0.336 | 1.000 |
| predicted_RBI | 0.610 | 0.000 | 1.000 | Hitting_RBI | 0.597 | 1.000 | -0.597 | -1.000 |
| predicted_SLG | 0.472 | 0.667 | 0.333 | Hitting_SLG | 0.546 | 0.500 | 0.121 | 0.167 |
| predicted_SO | 0.810 | 1.000 | 2.000 | Hitting_SO | 0.790 | 1.000 | 0.210 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_BB: 0.4050 -> 2.0000 (boost 1.5950, better) |
| Biggest Deboost | predicted_AB: 3.7590 -> 3.0000 (deboost -0.7590, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.7590 -> 5.8836 (boost 2.1246, 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 | 2 | 0 | 2 | 0 | predicted_SLG: 0.5045 -> 0.5231 (boost 0.0186, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 3 | 6 | 4 | 5 | predicted_BB: 0.5316 -> 1.0000 (boost 0.4684, better) | predicted_2B: 0.4016 -> 0.0000 (deboost -0.4016, worse) | AB rounded to 6 (raw=5.88), rates preserved: AVG=0.288 HR/AB=0.050 |
| 5 | bvp_blend | 1 | 1 | 0 | 0 | 1 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | - | Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125) |
| 6 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3471 -> 0.4290 (boost 0.0819, better) | predicted_SLG: 0.5231 -> 0.3330 (deboost -0.1901, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 2 | predicted_BB: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.5231 (boost 0.1901, better) | predicted_OBP: 0.4290 -> 0.3471 (deboost -0.0819, worse) | 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.25,
"predicted_3B": 0.043,
"predicted_AB": 3.759,
"predicted_AVG": 0.261,
"predicted_BB": 0.405,
"predicted_H": 0.95,
"predicted_HR": 0.16,
"predicted_OBP": 0.332,
"predicted_R": 0.672,
"predicted_RBI": 0.61,
"predicted_SLG": 0.472,
"predicted_SO": 0.81
},
"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.4016,
"predicted_3B": 0.0504,
"predicted_AB": 5.8836,
"predicted_AVG": 0.2798,
"predicted_BB": 0.5276,
"predicted_H": 1.6803,
"predicted_HBP": 0.098,
"predicted_HR": 0.2904,
"predicted_OBP": 0.3451,
"predicted_R": 1.0155,
"predicted_RBI": 1.0765,
"predicted_SLG": 0.5045,
"predicted_SO": 1.2969
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.4016,
"delta": 0.1516,
"percent_delta": 0.6064,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.043,
"after": 0.0504,
"delta": 0.0074,
"percent_delta": 0.1721,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.759,
"after": 5.8836,
"delta": 2.1246,
"percent_delta": 0.5652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.2798,
"delta": 0.0188,
"percent_delta": 0.072,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 0.5276,
"delta": 0.1226,
"percent_delta": 0.3027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 1.6803,
"delta": 0.7303,
"percent_delta": 0.7687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2904,
"delta": 0.1304,
"percent_delta": 0.815,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3451,
"delta": 0.0131,
"percent_delta": 0.0395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.672,
"after": 1.0155,
"delta": 0.3435,
"percent_delta": 0.5112,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.61,
"after": 1.0765,
"delta": 0.4665,
"percent_delta": 0.7648,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.472,
"after": 0.5045,
"delta": 0.0325,
"percent_delta": 0.0689,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.81,
"after": 1.2969,
"delta": 0.4869,
"percent_delta": 0.6011,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.759,
"after": 5.8836,
"delta": 2.1246,
"percent_delta": 0.5652,
"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": 9,
"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.4016,
"predicted_3B": 0.0504,
"predicted_AB": 5.8836,
"predicted_AVG": 0.2881,
"predicted_BB": 0.5316,
"predicted_H": 1.6949,
"predicted_HBP": 0.098,
"predicted_HR": 0.2935,
"predicted_OBP": 0.3471,
"predicted_R": 1.0328,
"predicted_RBI": 1.0948,
"predicted_SLG": 0.5231,
"predicted_SO": 1.287
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4016,
"after": 0.4016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0504,
"after": 0.0504,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.8836,
"after": 5.8836,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2798,
"after": 0.2881,
"delta": 0.0083,
"percent_delta": 0.0297,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5276,
"after": 0.5316,
"delta": 0.004,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6803,
"after": 1.6949,
"delta": 0.0146,
"percent_delta": 0.0087,
"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.2904,
"after": 0.2935,
"delta": 0.0031,
"percent_delta": 0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3451,
"after": 0.3471,
"delta": 0.002,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0155,
"after": 1.0328,
"delta": 0.0173,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0765,
"after": 1.0948,
"delta": 0.0183,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5045,
"after": 0.5231,
"delta": 0.0186,
"percent_delta": 0.0369,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2969,
"after": 1.287,
"delta": -0.0099,
"percent_delta": -0.0076,
"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.5045,
"after": 0.5231,
"delta": 0.0186,
"percent_delta": 0.0369,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.88), rates preserved: AVG=0.288 HR/AB=0.050",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.4016,
"after": 0.0,
"delta": -0.4016,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0504,
"after": 0.0,
"delta": -0.0504,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.8836,
"after": 6.0,
"delta": 0.1164,
"percent_delta": 0.0198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5316,
"after": 1.0,
"delta": 0.4684,
"percent_delta": 0.8811,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6949,
"after": 2.0,
"delta": 0.3051,
"percent_delta": 0.18,
"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.2935,
"after": 0.0,
"delta": -0.2935,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0948,
"after": 1.0,
"delta": -0.0948,
"percent_delta": -0.0866,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.287,
"after": 1.0,
"delta": -0.287,
"percent_delta": -0.223,
"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.5316,
"after": 1.0,
"delta": 0.4684,
"percent_delta": 0.8811,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4016,
"after": 0.0,
"delta": -0.4016,
"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": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 6.0,
"after": 6.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": 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_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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"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": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"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": 6.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": 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": 6.0,
"after": 6.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": 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_R",
"before": 1.0328,
"after": 1.0,
"delta": -0.0328,
"percent_delta": -0.0318,
"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_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": {}
},
{
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"predicted_R": 1.0,
"predicted_RBI": 1.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2881,
"after": 0.333,
"delta": 0.0449,
"percent_delta": 0.1558,
"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": 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_OBP",
"before": 0.3471,
"after": 0.429,
"delta": 0.0819,
"percent_delta": 0.236,
"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.5231,
"after": 0.333,
"delta": -0.1901,
"percent_delta": -0.3634,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3471,
"after": 0.429,
"delta": 0.0819,
"percent_delta": 0.236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5231,
"after": 0.333,
"delta": -0.1901,
"percent_delta": -0.3634,
"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": 2.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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 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_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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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.2881,
"predicted_BB": 2.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": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5231,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2881,
"delta": -0.0449,
"percent_delta": -0.1349,
"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.429,
"after": 0.3471,
"delta": -0.0819,
"percent_delta": -0.191,
"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.5231,
"delta": 0.1901,
"percent_delta": 0.5709,
"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.5231,
"delta": 0.1901,
"percent_delta": 0.5709,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3471,
"delta": -0.0819,
"percent_delta": -0.191,
"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": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.043,
"after": 0.0,
"delta": -0.043,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.759,
"after": 3.0,
"delta": -0.759,
"percent_delta": -0.2019,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.2881,
"delta": 0.0271,
"percent_delta": 0.1038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 2.0,
"delta": 1.595,
"percent_delta": 3.9383,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 2.0,
"delta": 1.05,
"percent_delta": 1.1053,
"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.332,
"after": 0.3471,
"delta": 0.0151,
"percent_delta": 0.0455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.61,
"after": 0.0,
"delta": -0.61,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.472,
"after": 0.5231,
"delta": 0.0511,
"percent_delta": 0.1083,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.81,
"after": 1.0,
"delta": 0.19,
"percent_delta": 0.2346,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 7,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.405,
"after": 2.0,
"delta": 1.595,
"percent_delta": 3.9383,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.759,
"after": 3.0,
"delta": -0.759,
"percent_delta": -0.2019,
"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.250 | - |
| predicted_3B | 0.043 | - |
| predicted_AB | 3.759 | - |
| predicted_AVG | 0.261 | - |
| predicted_BB | 0.405 | - |
| predicted_H | 0.950 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.672 | - |
| predicted_RBI | 0.610 | - |
| predicted_SLG | 0.472 | - |
| predicted_SO | 0.810 | - |
Final model 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.402 | 0.152 |
| predicted_3B | 0.050 | 0.007 |
| predicted_AB | 5.884 | 2.125 |
| predicted_AVG | 0.280 | 0.019 |
| predicted_BB | 0.528 | 0.123 |
| predicted_H | 1.680 | 0.730 |
| predicted_HBP | 0.098 | - |
| predicted_HR | 0.290 | 0.130 |
| predicted_OBP | 0.345 | 0.013 |
| predicted_R | 1.016 | 0.344 |
| predicted_RBI | 1.077 | 0.467 |
| predicted_SLG | 0.504 | 0.032 |
| predicted_SO | 1.297 | 0.487 |
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.402 | 0.000 |
| predicted_3B | 0.050 | 0.000 |
| predicted_AB | 5.884 | 0.000 |
| predicted_AVG | 0.288 | 0.008 |
| predicted_BB | 0.532 | 0.004 |
| predicted_H | 1.695 | 0.015 |
| predicted_HBP | 0.098 | 0.000 |
| predicted_HR | 0.293 | 0.003 |
| predicted_OBP | 0.347 | 0.002 |
| predicted_R | 1.033 | 0.017 |
| predicted_RBI | 1.095 | 0.018 |
| predicted_SLG | 0.523 | 0.019 |
| predicted_SO | 1.287 | -0.010 |
AB rounded to 6 (raw=5.88), rates preserved: AVG=0.288 HR/AB=0.050
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.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.125)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.402 |
| predicted_3B | 0.000 | -0.050 |
| predicted_AB | 6.000 | 0.116 |
| predicted_AVG | 0.333 | 0.045 |
| predicted_BB | 1.000 | 0.468 |
| predicted_H | 2.000 | 0.305 |
| predicted_HR | 0.000 | -0.293 |
| predicted_OBP | 0.429 | 0.082 |
| predicted_R | 1.000 | -0.033 |
| predicted_RBI | 1.000 | -0.095 |
| predicted_SLG | 0.333 | -0.190 |
| predicted_SO | 2.000 | 0.713 |
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 | -3.000 |
| BB | 2.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.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 | -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 | 2.000 | 0.000 | 1.000 | 5.000 | 3.000 | 0.000 | 5.000 | 0.3500 | 0.3500 | 0.6000 | 0.3500 | 0.0500 | 0.2500 | 0.0000 | 0.2500 |
| last_10 | 0.20 | 9 | - | 41.000 | 14.000 | 2.000 | 0.000 | 2.000 | 11.000 | 7.000 | 3.000 | 9.000 | 0.3415 | 0.3864 | 0.5366 | 0.3415 | 0.0488 | 0.2683 | 0.0732 | 0.2195 |
| season | 0.60 | 37 | - | 436.000 | 124.000 | 29.000 | 5.000 | 25.000 | 71.000 | 78.000 | 47.000 | 94.000 | 0.2844 | 0.3646 | 0.5459 | 0.2844 | 0.0573 | 0.1628 | 0.1078 | 0.2156 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6000 |
| predicted_3B | 0.0600 |
| predicted_AB | 8.6640 |
| predicted_AVG | 0.3043 |
| predicted_BB | 0.6880 |
| predicted_H | 2.6360 |
| predicted_HBP | 0.0980 |
| predicted_HR | 0.4610 |
| predicted_OBP | 0.3622 |
| predicted_R | 1.4650 |
| predicted_RBI | 1.6870 |
| predicted_SLG | 0.5471 |
| predicted_SO | 1.9340 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2500 | 0.6000 | 0.4016 | model_form_blend |
| predicted_3B | 0.0430 | 0.0600 | 0.0504 | model_form_blend |
| predicted_AB | 3.7590 | 8.6640 | 5.8836 | model_form_blend |
| predicted_AVG | 0.2610 | 0.3043 | 0.2798 | model_form_blend |
| predicted_BB | 0.4050 | 0.6880 | 0.5276 | model_form_blend |
| predicted_H | 0.9500 | 2.6360 | 1.6803 | model_form_blend |
| predicted_HBP | - | 0.0980 | 0.0980 | form_only |
| predicted_HR | 0.1600 | 0.4610 | 0.2904 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3622 | 0.3451 | model_form_blend |
| predicted_R | 0.6720 | 1.4650 | 1.0155 | model_form_blend |
| predicted_RBI | 0.6100 | 1.6870 | 1.0765 | model_form_blend |
| predicted_SLG | 0.4720 | 0.5471 | 0.5045 | model_form_blend |
| predicted_SO | 0.8100 | 1.9340 | 1.2969 | 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 | 119 |
| Season rows before report date | 119 |
| Report year | 2026 |
| Profile rows used | 116 |
| 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 | 1 |
| RBI | 0 |
| BB | 2 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.284 |
| 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 | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | 1B |
| gameID | 20260607_BOS@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-07 |
| sl_k_percent | 19.7 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.378 |
| sl_xwoba | 0.369 |
| sl_xba | 0.278 |
| sl_xslg | 0.493 |
| sl_sweet_spot_percent | 37.3 |
| sl_barrel_batted_rate | 11.8 |
| sl_hard_hit_percent | 42.2 |
| sl_exit_velocity_avg | 87.7 |
| sl_launch_angle_avg | 14.6 |
| sl_whiff_percent | 24.3 |
| 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.250 | 0.000 | 0.000 | Hitting_2B | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_3B | 0.027 | 0.000 | 0.000 | Hitting_3B | 0.027 | 0.000 | -0.027 | 0.000 |
| predicted_AB | 4.020 | 5.000 | 7.000 | Hitting_AB | 3.761 | 4.000 | 1.239 | 1.000 |
| predicted_AVG | 0.258 | 0.200 | 0.286 | Hitting_AVG | 0.299 | 0.000 | -0.099 | 0.200 |
| predicted_BB | 0.614 | 0.000 | 1.000 | Hitting_BB | 0.608 | 0.000 | -0.608 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.040 | 1.000 | 2.000 | Hitting_H | 1.126 | 0.000 | -0.126 | 1.000 |
| predicted_HR | 0.230 | 0.000 | 0.000 | Hitting_HR | 0.320 | 0.000 | -0.320 | 0.000 |
| predicted_OBP | 0.367 | 0.200 | 0.375 | Hitting_OBP | 0.401 | 0.000 | -0.201 | 0.200 |
| predicted_R | 0.859 | 0.000 | 1.000 | Hitting_R | 0.851 | 0.000 | -0.851 | 0.000 |
| predicted_RBI | 0.660 | 0.000 | 1.000 | Hitting_RBI | 0.784 | 0.000 | -0.784 | 0.000 |
| predicted_SLG | 0.529 | 0.200 | 0.286 | Hitting_SLG | 0.635 | 0.000 | -0.435 | 0.200 |
| predicted_SO | 1.032 | 2.000 | 2.000 | Hitting_SO | 1.023 | 2.000 | 0.977 | 0.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_AB: 4.0200 -> 5.0000 (boost 0.9800, better) |
| Biggest Deboost | predicted_R: 0.8590 -> 0.0000 (deboost -0.8590, 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 | 12 | 12 | 0 | 11 | 1 | predicted_AB: 4.0200 -> 6.7806 (boost 2.7606, 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 | 2 | 0 | 2 | 0 | predicted_SLG: 0.5671 -> 0.5839 (boost 0.0168, better) | - | 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 | 2 | 6 | predicted_AB: 6.7806 -> 7.0000 (boost 0.2194, better) | predicted_HR: 0.4603 -> 0.0000 (deboost -0.4603, worse) | AB rounded to 7 (raw=6.78), rates preserved: AVG=0.286 HR/AB=0.068 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.4661 -> 1.0000 (deboost -0.4661, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.5839 -> 0.2860 (deboost -0.2979, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2860 -> 0.5839 (boost 0.2979, better) | - | 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.25,
"predicted_3B": 0.027,
"predicted_AB": 4.02,
"predicted_AVG": 0.258,
"predicted_BB": 0.614,
"predicted_H": 1.04,
"predicted_HR": 0.23,
"predicted_OBP": 0.367,
"predicted_R": 0.859,
"predicted_RBI": 0.66,
"predicted_SLG": 0.529,
"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.4535,
"predicted_3B": 0.0919,
"predicted_AB": 6.7806,
"predicted_AVG": 0.2748,
"predicted_BB": 1.0823,
"predicted_H": 1.924,
"predicted_HBP": 0.077,
"predicted_HR": 0.4555,
"predicted_OBP": 0.3803,
"predicted_R": 1.4416,
"predicted_RBI": 1.2704,
"predicted_SLG": 0.5671,
"predicted_SO": 1.9681
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.4535,
"delta": 0.2035,
"percent_delta": 0.814,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.0919,
"delta": 0.0649,
"percent_delta": 2.4037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 6.7806,
"delta": 2.7606,
"percent_delta": 0.6867,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2748,
"delta": 0.0168,
"percent_delta": 0.0651,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.614,
"after": 1.0823,
"delta": 0.4683,
"percent_delta": 0.7627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.924,
"delta": 0.884,
"percent_delta": 0.85,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.4555,
"delta": 0.2255,
"percent_delta": 0.9804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.367,
"after": 0.3803,
"delta": 0.0133,
"percent_delta": 0.0362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.859,
"after": 1.4416,
"delta": 0.5826,
"percent_delta": 0.6782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 1.2704,
"delta": 0.6104,
"percent_delta": 0.9248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.529,
"after": 0.5671,
"delta": 0.0381,
"percent_delta": 0.072,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.032,
"after": 1.9681,
"delta": 0.9361,
"percent_delta": 0.9071,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 12,
"deboosted_metrics": 0,
"better_metrics": 11,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.02,
"after": 6.7806,
"delta": 2.7606,
"percent_delta": 0.6867,
"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": 9,
"season": 58
}
},
{
"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.4535,
"predicted_3B": 0.0919,
"predicted_AB": 6.7806,
"predicted_AVG": 0.2862,
"predicted_BB": 1.0905,
"predicted_H": 1.9407,
"predicted_HBP": 0.077,
"predicted_HR": 0.4603,
"predicted_OBP": 0.3851,
"predicted_R": 1.4661,
"predicted_RBI": 1.292,
"predicted_SLG": 0.5839,
"predicted_SO": 1.9531
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4535,
"after": 0.4535,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0919,
"after": 0.0919,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.7806,
"after": 6.7806,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2748,
"after": 0.2862,
"delta": 0.0114,
"percent_delta": 0.0415,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0823,
"after": 1.0905,
"delta": 0.0082,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.924,
"after": 1.9407,
"delta": 0.0167,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.077,
"after": 0.077,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4555,
"after": 0.4603,
"delta": 0.0048,
"percent_delta": 0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3803,
"after": 0.3851,
"delta": 0.0048,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.4416,
"after": 1.4661,
"delta": 0.0245,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.2704,
"after": 1.292,
"delta": 0.0216,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5671,
"after": 0.5839,
"delta": 0.0168,
"percent_delta": 0.0296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9681,
"after": 1.9531,
"delta": -0.015,
"percent_delta": -0.0076,
"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.5671,
"after": 0.5839,
"delta": 0.0168,
"percent_delta": 0.0296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.78), rates preserved: AVG=0.286 HR/AB=0.068",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4535,
"after": 0.0,
"delta": -0.4535,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0919,
"after": 0.0,
"delta": -0.0919,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.7806,
"after": 7.0,
"delta": 0.2194,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0905,
"after": 1.0,
"delta": -0.0905,
"percent_delta": -0.083,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9407,
"after": 2.0,
"delta": 0.0593,
"percent_delta": 0.0306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.077,
"after": 0.0,
"delta": -0.077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4603,
"after": 0.0,
"delta": -0.4603,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.292,
"after": 1.0,
"delta": -0.292,
"percent_delta": -0.226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9531,
"after": 2.0,
"delta": 0.0469,
"percent_delta": 0.024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 6.7806,
"after": 7.0,
"delta": 0.2194,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4603,
"after": 0.0,
"delta": -0.4603,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.4661,
"after": 1.0,
"delta": -0.4661,
"percent_delta": -0.3179,
"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": 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_R",
"before": 1.4661,
"after": 1.0,
"delta": -0.4661,
"percent_delta": -0.3179,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2862,
"after": 0.286,
"delta": -0.0002,
"percent_delta": -0.0007,
"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": 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_OBP",
"before": 0.3851,
"after": 0.375,
"delta": -0.0101,
"percent_delta": -0.0262,
"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.5839,
"after": 0.286,
"delta": -0.2979,
"percent_delta": -0.5102,
"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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5839,
"after": 0.286,
"delta": -0.2979,
"percent_delta": -0.5102,
"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": 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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_AB",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.2862,
"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.3851,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5839,
"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.286,
"after": 0.2862,
"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_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3851,
"delta": 0.0101,
"percent_delta": 0.027,
"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.286,
"after": 0.5839,
"delta": 0.2979,
"percent_delta": 1.0415,
"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.286,
"after": 0.5839,
"delta": 0.2979,
"percent_delta": 1.0415,
"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.027,
"after": 0.0,
"delta": -0.027,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 5.0,
"delta": 0.98,
"percent_delta": 0.2438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2862,
"delta": 0.0282,
"percent_delta": 0.1093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.614,
"after": 0.0,
"delta": -0.614,
"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.367,
"after": 0.3851,
"delta": 0.0181,
"percent_delta": 0.0493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.859,
"after": 0.0,
"delta": -0.859,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.529,
"after": 0.5839,
"delta": 0.0549,
"percent_delta": 0.1038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.032,
"after": 2.0,
"delta": 0.968,
"percent_delta": 0.938,
"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_AB",
"before": 4.02,
"after": 5.0,
"delta": 0.98,
"percent_delta": 0.2438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.859,
"after": 0.0,
"delta": -0.859,
"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.027 | - |
| predicted_AB | 4.020 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.614 | - |
| predicted_H | 1.040 | - |
| predicted_HR | 0.230 | - |
| predicted_OBP | 0.367 | - |
| predicted_R | 0.859 | - |
| predicted_RBI | 0.660 | - |
| predicted_SLG | 0.529 | - |
| 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.454 | 0.204 |
| predicted_3B | 0.092 | 0.065 |
| predicted_AB | 6.781 | 2.761 |
| predicted_AVG | 0.275 | 0.017 |
| predicted_BB | 1.082 | 0.468 |
| predicted_H | 1.924 | 0.884 |
| predicted_HBP | 0.077 | - |
| predicted_HR | 0.456 | 0.226 |
| predicted_OBP | 0.380 | 0.013 |
| predicted_R | 1.442 | 0.583 |
| predicted_RBI | 1.270 | 0.610 |
| predicted_SLG | 0.567 | 0.038 |
| predicted_SO | 1.968 | 0.936 |
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.454 | 0.000 |
| predicted_3B | 0.092 | 0.000 |
| predicted_AB | 6.781 | 0.000 |
| predicted_AVG | 0.286 | 0.011 |
| predicted_BB | 1.091 | 0.008 |
| predicted_H | 1.941 | 0.017 |
| predicted_HBP | 0.077 | 0.000 |
| predicted_HR | 0.460 | 0.005 |
| predicted_OBP | 0.385 | 0.005 |
| predicted_R | 1.466 | 0.024 |
| predicted_RBI | 1.292 | 0.022 |
| predicted_SLG | 0.584 | 0.017 |
| predicted_SO | 1.953 | -0.015 |
AB rounded to 7 (raw=6.78), rates preserved: AVG=0.286 HR/AB=0.068
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.454 |
| predicted_3B | 0.000 | -0.092 |
| predicted_AB | 7.000 | 0.219 |
| predicted_AVG | 0.286 | -0.000 |
| predicted_BB | 1.000 | -0.091 |
| predicted_H | 2.000 | 0.059 |
| predicted_HR | 0.000 | -0.460 |
| predicted_OBP | 0.375 | -0.010 |
| predicted_R | 1.000 | -0.466 |
| predicted_RBI | 1.000 | -0.292 |
| predicted_SLG | 0.286 | -0.298 |
| predicted_SO | 2.000 | 0.047 |
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 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | 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 | 1.000 | 0.000 | 1.000 | 1.000 | 3.000 | 3.000 | 8.000 | 0.2222 | 0.3333 | 0.4444 | 0.2222 | 0.0556 | 0.0556 | 0.1667 | 0.4444 |
| last_10 | 0.20 | 9 | - | 39.000 | 15.000 | 4.000 | 3.000 | 2.000 | 14.000 | 9.000 | 7.000 | 11.000 | 0.3846 | 0.4783 | 0.7949 | 0.3846 | 0.0513 | 0.3590 | 0.1795 | 0.2821 |
| season | 0.60 | 58 | - | 835.000 | 250.000 | 55.000 | 6.000 | 71.000 | 173.000 | 189.000 | 135.000 | 227.000 | 0.2994 | 0.4010 | 0.6347 | 0.2994 | 0.0850 | 0.2072 | 0.1617 | 0.2719 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7110 |
| predicted_3B | 0.1740 |
| predicted_AB | 10.2750 |
| predicted_AVG | 0.2961 |
| predicted_BB | 1.6750 |
| predicted_H | 3.0430 |
| predicted_HBP | 0.0770 |
| predicted_HR | 0.7410 |
| predicted_OBP | 0.3972 |
| predicted_R | 2.1790 |
| predicted_RBI | 2.0430 |
| predicted_SLG | 0.6154 |
| predicted_SO | 3.1530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2500 | 0.7110 | 0.4535 | model_form_blend |
| predicted_3B | 0.0270 | 0.1740 | 0.0919 | model_form_blend |
| predicted_AB | 4.0200 | 10.2750 | 6.7806 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2961 | 0.2748 | model_form_blend |
| predicted_BB | 0.6140 | 1.6750 | 1.0823 | model_form_blend |
| predicted_H | 1.0400 | 3.0430 | 1.9240 | model_form_blend |
| predicted_HBP | - | 0.0770 | 0.0770 | form_only |
| predicted_HR | 0.2300 | 0.7410 | 0.4555 | model_form_blend |
| predicted_OBP | 0.3670 | 0.3972 | 0.3803 | model_form_blend |
| predicted_R | 0.8590 | 2.1790 | 1.4416 | model_form_blend |
| predicted_RBI | 0.6600 | 2.0430 | 1.2704 | model_form_blend |
| predicted_SLG | 0.5290 | 0.6154 | 0.5671 | model_form_blend |
| predicted_SO | 1.0320 | 3.1530 | 1.9681 | 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 | 222 |
| Season rows before report date | 222 |
| Report year | 2026 |
| Profile rows used | 220 |
| 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 | 2 |
| 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 | 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 | 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 | 20260607_BOS@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-07 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 12.8 |
| sl_woba | 0.436 |
| sl_xwoba | 0.396 |
| sl_xba | 0.284 |
| sl_xslg | 0.54 |
| sl_sweet_spot_percent | 42.3 |
| sl_barrel_batted_rate | 16.7 |
| sl_hard_hit_percent | 50.6 |
| sl_exit_velocity_avg | 92.3 |
| sl_launch_angle_avg | 14.2 |
| sl_whiff_percent | 24.9 |
| 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_2B | 0.034 | 0.000 | 0.000 | Hitting_2B | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.621 | 2.000 | 4.000 | Hitting_AB | 2.621 | 1.000 | -0.621 | 1.000 |
| predicted_AVG | 0.280 | 0.500 | 0.250 | Hitting_AVG | 0.237 | 0.000 | 0.263 | 0.500 |
| predicted_BB | 0.310 | 2.000 | 0.000 | Hitting_BB | 0.310 | 0.000 | 1.690 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.660 | 1.000 | 1.000 | Hitting_H | 0.621 | 0.000 | 0.379 | 1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.323 | 0.750 | 0.250 | Hitting_OBP | 0.318 | 0.000 | 0.432 | 0.750 |
| predicted_R | 0.000 | 0.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_RBI | 0.330 | 0.000 | 0.000 | Hitting_RBI | 0.310 | 0.000 | -0.310 | 0.000 |
| predicted_SLG | 0.372 | 0.500 | 0.250 | Hitting_SLG | 0.250 | 0.000 | 0.250 | 0.500 |
| predicted_SO | 1.172 | 1.000 | 2.000 | Hitting_SO | 1.172 | 1.000 | -0.172 | 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.3100 -> 2.0000 (boost 1.6900, better) |
| Biggest Deboost | predicted_AB: 2.6210 -> 2.0000 (deboost -0.6210, 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 | 5 | 2 | predicted_AB: 2.6210 -> 3.5836 (boost 0.9626, better) | predicted_SLG: 0.3720 -> 0.3559 (deboost -0.0161, 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.3245 -> 0.3296 (boost 0.0051, better) | predicted_SLG: 0.3559 -> 0.3338 (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 | 7 | 3 | 4 | 2 | 5 | predicted_SO: 1.4683 -> 2.0000 (boost 0.5317, worse) | predicted_RBI: 0.4268 -> 0.0000 (deboost -0.4268, worse) | AB rounded to 4 (raw=3.58), rates preserved: AVG=0.263 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.0661 -> 0.0000 (deboost -0.0661, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3338 -> 0.2500 (deboost -0.0838, 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 -> 2.0000 (boost 2.0000, better) | predicted_AB: 4.0000 -> 2.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.3338 (boost 0.0838, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682987",
"player_name": "Spencer Jones",
"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.034,
"predicted_3B": 0.0,
"predicted_AB": 2.621,
"predicted_AVG": 0.28,
"predicted_BB": 0.31,
"predicted_H": 0.66,
"predicted_HR": 0.06,
"predicted_OBP": 0.323,
"predicted_R": 0.0,
"predicted_RBI": 0.33,
"predicted_SLG": 0.372,
"predicted_SO": 1.172
},
"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.0019,
"predicted_AB": 3.5836,
"predicted_AVG": 0.2754,
"predicted_BB": 0.3545,
"predicted_H": 0.9335,
"predicted_HBP": 0.012,
"predicted_HR": 0.0548,
"predicted_OBP": 0.3245,
"predicted_R": 0.065,
"predicted_RBI": 0.4197,
"predicted_SLG": 0.3559,
"predicted_SO": 1.4795
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.034,
"after": 0.0848,
"delta": 0.0508,
"percent_delta": 1.4941,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.621,
"after": 3.5836,
"delta": 0.9626,
"percent_delta": 0.3673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.28,
"after": 0.2754,
"delta": -0.0046,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 0.3545,
"delta": 0.0445,
"percent_delta": 0.1435,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.9335,
"delta": 0.2735,
"percent_delta": 0.4144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0548,
"delta": -0.0052,
"percent_delta": -0.0867,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3245,
"delta": 0.0015,
"percent_delta": 0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.065,
"delta": 0.065,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.4197,
"delta": 0.0897,
"percent_delta": 0.2718,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3559,
"delta": -0.0161,
"percent_delta": -0.0433,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.172,
"after": 1.4795,
"delta": 0.3075,
"percent_delta": 0.2624,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.621,
"after": 3.5836,
"delta": 0.9626,
"percent_delta": 0.3673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3559,
"delta": -0.0161,
"percent_delta": -0.0433,
"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": 3,
"last_10": 6,
"season": 12
}
},
{
"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.0019,
"predicted_AB": 3.5836,
"predicted_AVG": 0.2628,
"predicted_BB": 0.3572,
"predicted_H": 0.9416,
"predicted_HBP": 0.012,
"predicted_HR": 0.0554,
"predicted_OBP": 0.3296,
"predicted_R": 0.0661,
"predicted_RBI": 0.4268,
"predicted_SLG": 0.3338,
"predicted_SO": 1.4683
},
"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.0019,
"after": 0.0019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5836,
"after": 3.5836,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2754,
"after": 0.2628,
"delta": -0.0126,
"percent_delta": -0.0458,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3545,
"after": 0.3572,
"delta": 0.0027,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9335,
"after": 0.9416,
"delta": 0.0081,
"percent_delta": 0.0087,
"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.0548,
"after": 0.0554,
"delta": 0.0006,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3245,
"after": 0.3296,
"delta": 0.0051,
"percent_delta": 0.0157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.065,
"after": 0.0661,
"delta": 0.0011,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4197,
"after": 0.4268,
"delta": 0.0071,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3559,
"after": 0.3338,
"delta": -0.0221,
"percent_delta": -0.0621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4795,
"after": 1.4683,
"delta": -0.0112,
"percent_delta": -0.0076,
"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.3245,
"after": 0.3296,
"delta": 0.0051,
"percent_delta": 0.0157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3559,
"after": 0.3338,
"delta": -0.0221,
"percent_delta": -0.0621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.58), rates preserved: AVG=0.263 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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 2.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.0019,
"after": 0.0,
"delta": -0.0019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5836,
"after": 4.0,
"delta": 0.4164,
"percent_delta": 0.1162,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3572,
"after": 0.0,
"delta": -0.3572,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9416,
"after": 1.0,
"delta": 0.0584,
"percent_delta": 0.062,
"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.0554,
"after": 0.0,
"delta": -0.0554,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4268,
"after": 0.0,
"delta": -0.4268,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4683,
"after": 2.0,
"delta": 0.5317,
"percent_delta": 0.3621,
"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": 1.4683,
"after": 2.0,
"delta": 0.5317,
"percent_delta": 0.3621,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4268,
"after": 0.0,
"delta": -0.4268,
"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": 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_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0661,
"after": 0.0,
"delta": -0.0661,
"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": 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_R",
"before": 0.0661,
"after": 0.0,
"delta": -0.0661,
"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": 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.2628,
"after": 0.25,
"delta": -0.0128,
"percent_delta": -0.0487,
"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.3296,
"after": 0.25,
"delta": -0.0796,
"percent_delta": -0.2415,
"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.3338,
"after": 0.25,
"delta": -0.0838,
"percent_delta": -0.251,
"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_SLG",
"before": 0.3338,
"after": 0.25,
"delta": -0.0838,
"percent_delta": -0.251,
"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": 2.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": 2.0,
"delta": -2.0,
"percent_delta": -0.5,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"delta": 2.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.2628,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3296,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3338,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2628,
"delta": 0.0128,
"percent_delta": 0.051,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.3296,
"delta": 0.0796,
"percent_delta": 0.3183,
"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.3338,
"delta": 0.0838,
"percent_delta": 0.3354,
"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.3338,
"delta": 0.0838,
"percent_delta": 0.3354,
"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.034,
"after": 0.0,
"delta": -0.034,
"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.621,
"after": 2.0,
"delta": -0.621,
"percent_delta": -0.2369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.28,
"after": 0.2628,
"delta": -0.0172,
"percent_delta": -0.0614,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 2.0,
"delta": 1.69,
"percent_delta": 5.4516,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 1.0,
"delta": 0.34,
"percent_delta": 0.5152,
"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.323,
"after": 0.3296,
"delta": 0.0066,
"percent_delta": 0.0204,
"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.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3338,
"delta": -0.0382,
"percent_delta": -0.1027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.172,
"after": 1.0,
"delta": -0.172,
"percent_delta": -0.1468,
"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.31,
"after": 2.0,
"delta": 1.69,
"percent_delta": 5.4516,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 2.621,
"after": 2.0,
"delta": -0.621,
"percent_delta": -0.2369,
"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.034 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.621 | - |
| predicted_AVG | 0.280 | - |
| predicted_BB | 0.310 | - |
| predicted_H | 0.660 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.323 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.372 | - |
| predicted_SO | 1.172 | - |
Final model 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.051 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.584 | 0.963 |
| predicted_AVG | 0.275 | -0.005 |
| predicted_BB | 0.354 | 0.044 |
| predicted_H | 0.933 | 0.273 |
| predicted_HBP | 0.012 | - |
| predicted_HR | 0.055 | -0.005 |
| predicted_OBP | 0.325 | 0.002 |
| predicted_R | 0.065 | 0.065 |
| predicted_RBI | 0.420 | 0.090 |
| predicted_SLG | 0.356 | -0.016 |
| predicted_SO | 1.480 | 0.308 |
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.002 | 0.000 |
| predicted_AB | 3.584 | 0.000 |
| predicted_AVG | 0.263 | -0.013 |
| predicted_BB | 0.357 | 0.003 |
| predicted_H | 0.942 | 0.008 |
| predicted_HBP | 0.012 | 0.000 |
| predicted_HR | 0.055 | 0.001 |
| predicted_OBP | 0.330 | 0.005 |
| predicted_R | 0.066 | 0.001 |
| predicted_RBI | 0.427 | 0.007 |
| predicted_SLG | 0.334 | -0.022 |
| predicted_SO | 1.468 | -0.011 |
AB rounded to 4 (raw=3.58), rates preserved: AVG=0.263 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 | 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 | 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 | 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.085 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.416 |
| predicted_AVG | 0.250 | -0.013 |
| predicted_BB | 0.000 | -0.357 |
| predicted_H | 1.000 | 0.058 |
| predicted_HR | 0.000 | -0.055 |
| predicted_OBP | 0.250 | -0.080 |
| predicted_R | 0.000 | -0.066 |
| predicted_RBI | 0.000 | -0.427 |
| predicted_SLG | 0.250 | -0.084 |
| predicted_SO | 2.000 | 0.532 |
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 | 2.000 | 2.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 | 3 | - | 13.000 | 6.000 | 1.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 4.000 | 0.4615 | 0.4615 | 0.5385 | 0.4615 | 0.0000 | 0.0769 | 0.0000 | 0.3077 |
| last_10 | 0.20 | 6 | - | 22.000 | 6.000 | 1.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 12.000 | 0.2727 | 0.2727 | 0.3182 | 0.2727 | 0.0000 | 0.0454 | 0.0000 | 0.5454 |
| season | 0.60 | 12 | - | 76.000 | 18.000 | 1.000 | 0.000 | 0.000 | 9.000 | 0.000 | 9.000 | 34.000 | 0.2368 | 0.3176 | 0.2500 | 0.2368 | 0.0000 | 0.1184 | 0.1184 | 0.4474 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1700 |
| predicted_3B | 0.0050 |
| predicted_AB | 5.1970 |
| predicted_AVG | 0.2678 |
| predicted_BB | 0.4290 |
| predicted_H | 1.3920 |
| predicted_HBP | 0.0120 |
| predicted_HR | 0.0460 |
| predicted_OBP | 0.3269 |
| predicted_R | 0.1740 |
| predicted_RBI | 0.5700 |
| predicted_SLG | 0.3290 |
| predicted_SO | 1.9950 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0340 | 0.1700 | 0.0848 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0019 | model_form_blend |
| predicted_AB | 2.6210 | 5.1970 | 3.5836 | model_form_blend |
| predicted_AVG | 0.2800 | 0.2678 | 0.2754 | model_form_blend |
| predicted_BB | 0.3100 | 0.4290 | 0.3545 | model_form_blend |
| predicted_H | 0.6600 | 1.3920 | 0.9335 | model_form_blend |
| predicted_HBP | - | 0.0120 | 0.0120 | form_only |
| predicted_HR | 0.0600 | 0.0460 | 0.0548 | model_form_blend |
| predicted_OBP | 0.3230 | 0.3269 | 0.3245 | model_form_blend |
| predicted_R | 0.0000 | 0.1740 | 0.0650 | model_form_blend |
| predicted_RBI | 0.3300 | 0.5700 | 0.4197 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3290 | 0.3559 | model_form_blend |
| predicted_SO | 1.1720 | 1.9950 | 1.4795 | 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 | 29 |
| Season rows before report date | 29 |
| 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 | 2 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.237 |
| 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 | 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 | 20260607_BOS@NYY |
| game_type | ph |
| mlbID | 682987 |
| note | Struck out for Sánchez, A in the 7th. |
| playerID | 682987 |
| playerName | Spencer Jones |
| pos | CF |
| started | False |
| startingPosition | PH |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 41.9 |
| sl_bb_percent | 9.7 |
| sl_woba | 0.282 |
| sl_xwoba | 0.247 |
| sl_xba | 0.188 |
| sl_xslg | 0.276 |
| sl_sweet_spot_percent | 26.7 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 73.3 |
| sl_exit_velocity_avg | 96.8 |
| sl_launch_angle_avg | 12.9 |
| sl_whiff_percent | 34.9 |
| sl_swing_percent | 56.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.193 | 0.000 | 0.000 | Hitting_2B | 0.192 | 0.000 | -0.192 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 3.780 | 5.000 | 7.000 | Hitting_AB | 3.763 | 4.000 | 1.237 | 1.000 |
| predicted_AVG | 0.226 | 0.000 | 0.286 | Hitting_AVG | 0.247 | 0.250 | -0.247 | -0.250 |
| predicted_BB | 0.444 | 0.000 | 1.000 | Hitting_BB | 0.442 | 0.000 | -0.442 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.058 | 0.000 | -0.058 | 0.000 |
| predicted_H | 0.840 | 0.000 | 2.000 | Hitting_H | 0.929 | 1.000 | -0.929 | -1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.129 | 1.000 | -0.129 | -1.000 |
| predicted_OBP | 0.290 | 0.000 | 0.375 | Hitting_OBP | 0.327 | 0.250 | -0.327 | -0.250 |
| predicted_R | 0.538 | 0.000 | 1.000 | Hitting_R | 0.536 | 1.000 | -0.536 | -1.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.433 | 3.000 | -0.433 | -3.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.241 | 0.000 | -0.241 | 0.000 |
| predicted_SLG | 0.408 | 0.000 | 0.286 | Hitting_SLG | 0.410 | 1.000 | -0.410 | -1.000 |
| predicted_SO | 1.206 | 2.000 | 2.000 | Hitting_SO | 1.201 | 3.000 | 0.799 | -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_AB: 3.7800 -> 5.0000 (boost 1.2200, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.7800 -> 6.6276 (boost 2.8476, 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 | 2 | 0 | 2 | 0 | predicted_SLG: 0.4304 -> 0.4469 (boost 0.0165, 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 | 4 | 2 | predicted_H: 1.5254 -> 2.0000 (boost 0.4746, better) | predicted_HR: 0.3761 -> 0.0000 (deboost -0.3761, worse) | AB rounded to 7 (raw=6.63), rates preserved: AVG=0.230 HR/AB=0.057 |
| 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: 1.1738 -> 1.0000 (deboost -0.1738, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3046 -> 0.3750 (boost 0.0704, better) | predicted_SLG: 0.4469 -> 0.2860 (deboost -0.1609, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4469 (boost 0.1609, better) | predicted_OBP: 0.3750 -> 0.3046 (deboost -0.0704, 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.193,
"predicted_3B": 0.018,
"predicted_AB": 3.78,
"predicted_AVG": 0.226,
"predicted_BB": 0.444,
"predicted_H": 0.84,
"predicted_HR": 0.16,
"predicted_OBP": 0.29,
"predicted_R": 0.538,
"predicted_RBI": 0.52,
"predicted_SLG": 0.408,
"predicted_SO": 1.206
},
"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.26,
"predicted_3B": 0.0242,
"predicted_AB": 6.6276,
"predicted_AVG": 0.2282,
"predicted_BB": 0.7042,
"predicted_H": 1.5122,
"predicted_HBP": 0.034,
"predicted_HR": 0.3722,
"predicted_OBP": 0.2936,
"predicted_R": 1.1542,
"predicted_RBI": 1.0259,
"predicted_SLG": 0.4304,
"predicted_SO": 2.2959
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.193,
"after": 0.26,
"delta": 0.067,
"percent_delta": 0.3472,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0242,
"delta": 0.0062,
"percent_delta": 0.3444,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.78,
"after": 6.6276,
"delta": 2.8476,
"percent_delta": 0.7533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2282,
"delta": 0.0022,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.444,
"after": 0.7042,
"delta": 0.2602,
"percent_delta": 0.586,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 1.5122,
"delta": 0.6722,
"percent_delta": 0.8002,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.3722,
"delta": 0.2122,
"percent_delta": 1.3262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2936,
"delta": 0.0036,
"percent_delta": 0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.538,
"after": 1.1542,
"delta": 0.6162,
"percent_delta": 1.1454,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 1.0259,
"delta": 0.5059,
"percent_delta": 0.9729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4304,
"delta": 0.0224,
"percent_delta": 0.0549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.206,
"after": 2.2959,
"delta": 1.0899,
"percent_delta": 0.9037,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.78,
"after": 6.6276,
"delta": 2.8476,
"percent_delta": 0.7533,
"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": 8,
"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.26,
"predicted_3B": 0.0242,
"predicted_AB": 6.6276,
"predicted_AVG": 0.2302,
"predicted_BB": 0.7096,
"predicted_H": 1.5254,
"predicted_HBP": 0.034,
"predicted_HR": 0.3761,
"predicted_OBP": 0.3046,
"predicted_R": 1.1738,
"predicted_RBI": 1.0433,
"predicted_SLG": 0.4469,
"predicted_SO": 2.2785
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.26,
"after": 0.26,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0242,
"after": 0.0242,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6276,
"after": 6.6276,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2282,
"after": 0.2302,
"delta": 0.002,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7042,
"after": 0.7096,
"delta": 0.0054,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5122,
"after": 1.5254,
"delta": 0.0132,
"percent_delta": 0.0087,
"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.3722,
"after": 0.3761,
"delta": 0.0039,
"percent_delta": 0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2936,
"after": 0.3046,
"delta": 0.011,
"percent_delta": 0.0375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1542,
"after": 1.1738,
"delta": 0.0196,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0259,
"after": 1.0433,
"delta": 0.0174,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4304,
"after": 0.4469,
"delta": 0.0165,
"percent_delta": 0.0383,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.2959,
"after": 2.2785,
"delta": -0.0174,
"percent_delta": -0.0076,
"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.4304,
"after": 0.4469,
"delta": 0.0165,
"percent_delta": 0.0383,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.63), rates preserved: AVG=0.230 HR/AB=0.057",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0242,
"after": 0.0,
"delta": -0.0242,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6276,
"after": 7.0,
"delta": 0.3724,
"percent_delta": 0.0562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7096,
"after": 1.0,
"delta": 0.2904,
"percent_delta": 0.4092,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5254,
"after": 2.0,
"delta": 0.4746,
"percent_delta": 0.3111,
"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.3761,
"after": 0.0,
"delta": -0.3761,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0433,
"after": 1.0,
"delta": -0.0433,
"percent_delta": -0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.2785,
"after": 2.0,
"delta": -0.2785,
"percent_delta": -0.1222,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.5254,
"after": 2.0,
"delta": 0.4746,
"percent_delta": 0.3111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3761,
"after": 0.0,
"delta": -0.3761,
"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": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 7.0,
"after": 7.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": 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_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": 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": {
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.1738,
"after": 1.0,
"delta": -0.1738,
"percent_delta": -0.1481,
"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": 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_R",
"before": 1.1738,
"after": 1.0,
"delta": -0.1738,
"percent_delta": -0.1481,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2302,
"after": 0.286,
"delta": 0.0558,
"percent_delta": 0.2424,
"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": 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_OBP",
"before": 0.3046,
"after": 0.375,
"delta": 0.0704,
"percent_delta": 0.2311,
"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.4469,
"after": 0.286,
"delta": -0.1609,
"percent_delta": -0.36,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3046,
"after": 0.375,
"delta": 0.0704,
"percent_delta": 0.2311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4469,
"after": 0.286,
"delta": -0.1609,
"percent_delta": -0.36,
"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": 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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_AB",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.2302,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3046,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4469,
"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.286,
"after": 0.2302,
"delta": -0.0558,
"percent_delta": -0.1953,
"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.375,
"after": 0.3046,
"delta": -0.0704,
"percent_delta": -0.1877,
"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.286,
"after": 0.4469,
"delta": 0.1609,
"percent_delta": 0.5628,
"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.286,
"after": 0.4469,
"delta": 0.1609,
"percent_delta": 0.5628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3046,
"delta": -0.0704,
"percent_delta": -0.1877,
"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.193,
"after": 0.0,
"delta": -0.193,
"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.78,
"after": 5.0,
"delta": 1.22,
"percent_delta": 0.3228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2302,
"delta": 0.0042,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.444,
"after": 0.0,
"delta": -0.444,
"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.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.3046,
"delta": 0.0146,
"percent_delta": 0.0503,
"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.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4469,
"delta": 0.0389,
"percent_delta": 0.0953,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.206,
"after": 2.0,
"delta": 0.794,
"percent_delta": 0.6584,
"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_AB",
"before": 3.78,
"after": 5.0,
"delta": 1.22,
"percent_delta": 0.3228,
"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.193 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 3.780 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.444 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.290 | - |
| predicted_R | 0.538 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.408 | - |
| predicted_SO | 1.206 | - |
Final model 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.260 | 0.067 |
| predicted_3B | 0.024 | 0.006 |
| predicted_AB | 6.628 | 2.848 |
| predicted_AVG | 0.228 | 0.002 |
| predicted_BB | 0.704 | 0.260 |
| predicted_H | 1.512 | 0.672 |
| predicted_HBP | 0.034 | - |
| predicted_HR | 0.372 | 0.212 |
| predicted_OBP | 0.294 | 0.004 |
| predicted_R | 1.154 | 0.616 |
| predicted_RBI | 1.026 | 0.506 |
| predicted_SLG | 0.430 | 0.022 |
| predicted_SO | 2.296 | 1.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.260 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 6.628 | 0.000 |
| predicted_AVG | 0.230 | 0.002 |
| predicted_BB | 0.710 | 0.005 |
| predicted_H | 1.525 | 0.013 |
| predicted_HBP | 0.034 | 0.000 |
| predicted_HR | 0.376 | 0.004 |
| predicted_OBP | 0.305 | 0.011 |
| predicted_R | 1.174 | 0.020 |
| predicted_RBI | 1.043 | 0.017 |
| predicted_SLG | 0.447 | 0.017 |
| predicted_SO | 2.279 | -0.017 |
AB rounded to 7 (raw=6.63), rates preserved: AVG=0.230 HR/AB=0.057
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.260 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 7.000 | 0.372 |
| predicted_AVG | 0.286 | 0.056 |
| predicted_BB | 1.000 | 0.290 |
| predicted_H | 2.000 | 0.475 |
| predicted_HR | 0.000 | -0.376 |
| predicted_OBP | 0.375 | 0.070 |
| predicted_R | 1.000 | -0.174 |
| predicted_RBI | 1.000 | -0.043 |
| predicted_SLG | 0.286 | -0.161 |
| predicted_SO | 2.000 | -0.279 |
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 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 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 | 0.000 | 0.000 | 2.000 | 5.000 | 5.000 | 1.000 | 9.000 | 0.1765 | 0.2105 | 0.5294 | 0.1765 | 0.1177 | 0.2941 | 0.0588 | 0.5294 |
| last_10 | 0.20 | 8 | - | 42.000 | 10.000 | 0.000 | 0.000 | 5.000 | 8.000 | 11.000 | 4.000 | 13.000 | 0.2381 | 0.2979 | 0.5952 | 0.2381 | 0.1191 | 0.1905 | 0.0952 | 0.3095 |
| season | 0.60 | 61 | - | 843.000 | 208.000 | 43.000 | 4.000 | 29.000 | 97.000 | 120.000 | 99.000 | 269.000 | 0.2467 | 0.3267 | 0.4104 | 0.2467 | 0.0344 | 0.1151 | 0.1174 | 0.3191 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3450 |
| predicted_3B | 0.0320 |
| predicted_AB | 10.2360 |
| predicted_AVG | 0.2309 |
| predicted_BB | 1.0340 |
| predicted_H | 2.3640 |
| predicted_HBP | 0.0340 |
| predicted_HR | 0.6410 |
| predicted_OBP | 0.2982 |
| predicted_R | 1.9350 |
| predicted_RBI | 1.6670 |
| predicted_SLG | 0.4588 |
| predicted_SO | 3.6770 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1930 | 0.3450 | 0.2600 | model_form_blend |
| predicted_3B | 0.0180 | 0.0320 | 0.0242 | model_form_blend |
| predicted_AB | 3.7800 | 10.2360 | 6.6276 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2309 | 0.2282 | model_form_blend |
| predicted_BB | 0.4440 | 1.0340 | 0.7042 | model_form_blend |
| predicted_H | 0.8400 | 2.3640 | 1.5122 | model_form_blend |
| predicted_HBP | - | 0.0340 | 0.0340 | form_only |
| predicted_HR | 0.1600 | 0.6410 | 0.3722 | model_form_blend |
| predicted_OBP | 0.2900 | 0.2982 | 0.2936 | model_form_blend |
| predicted_R | 0.5380 | 1.9350 | 1.1542 | model_form_blend |
| predicted_RBI | 0.5200 | 1.6670 | 1.0259 | model_form_blend |
| predicted_SLG | 0.4080 | 0.4588 | 0.4304 | model_form_blend |
| predicted_SO | 1.2060 | 3.6770 | 2.2959 | 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 | 223 |
| 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.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 | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 3 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 4 |
| 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 | 20260607_BOS@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-07 |
| sl_k_percent | 29.0 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.312 |
| sl_xwoba | 0.288 |
| sl_xba | 0.212 |
| sl_xslg | 0.36 |
| sl_sweet_spot_percent | 29.6 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 38.8 |
| sl_exit_velocity_avg | 89.5 |
| sl_launch_angle_avg | 15.5 |
| sl_whiff_percent | 31.8 |
| 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.187 | 0.000 | 0.000 | Hitting_2B | 0.185 | 1.000 | -0.185 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.509 | 3.000 | 6.000 | Hitting_AB | 3.468 | 4.000 | -0.468 | -1.000 |
| predicted_AVG | 0.245 | 0.000 | 0.333 | Hitting_AVG | 0.273 | 0.250 | -0.273 | -0.250 |
| predicted_BB | 0.187 | 1.000 | 0.000 | Hitting_BB | 0.185 | 0.000 | 0.815 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.133 | 0.000 | -0.133 | 0.000 |
| predicted_H | 0.770 | 0.000 | 2.000 | Hitting_H | 0.948 | 1.000 | -0.948 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.110 | 0.000 | -0.110 | 0.000 |
| predicted_OBP | 0.300 | 0.250 | 0.333 | Hitting_OBP | 0.326 | 0.250 | -0.076 | 0.000 |
| predicted_R | 0.468 | 0.000 | 1.000 | Hitting_R | 0.462 | 1.000 | -0.462 | -1.000 |
| predicted_RBI | 0.330 | 0.000 | 1.000 | Hitting_RBI | 0.370 | 0.000 | -0.370 | 0.000 |
| predicted_SLG | 0.394 | 0.000 | 0.333 | Hitting_SLG | 0.422 | 0.500 | -0.422 | -0.500 |
| predicted_SO | 0.667 | 0.000 | 1.000 | Hitting_SO | 0.659 | 1.000 | -0.659 | -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.1870 -> 1.0000 (boost 0.8130, better) |
| Biggest Deboost | predicted_H: 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.5090 -> 5.5141 (boost 2.0051, 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.3023 -> 0.2846 (deboost -0.0177, 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: 5.5141 -> 6.0000 (boost 0.4859, better) | predicted_H: 1.3441 -> 1.0000 (deboost -0.3441, worse) | AB rounded to 6 (raw=5.51), rates preserved: AVG=0.244 HR/AB=0.035 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.600) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8080 -> 1.0000 (boost 0.1920, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2438 -> 0.3330 (boost 0.0892, better) | predicted_SLG: 0.4059 -> 0.3330 (deboost -0.0729, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 1 | 5 | 2 | 4 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4059 (boost 0.0729, better) | predicted_AVG: 0.3330 -> 0.2438 (deboost -0.0892, 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.187,
"predicted_3B": 0.0,
"predicted_AB": 3.509,
"predicted_AVG": 0.245,
"predicted_BB": 0.187,
"predicted_H": 0.77,
"predicted_HR": 0.1,
"predicted_OBP": 0.3,
"predicted_R": 0.468,
"predicted_RBI": 0.33,
"predicted_SLG": 0.394,
"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.3081,
"predicted_3B": 0.0004,
"predicted_AB": 5.5141,
"predicted_AVG": 0.2489,
"predicted_BB": 0.3124,
"predicted_H": 1.3325,
"predicted_HBP": 0.124,
"predicted_HR": 0.1931,
"predicted_OBP": 0.3023,
"predicted_R": 0.7945,
"predicted_RBI": 0.514,
"predicted_SLG": 0.4087,
"predicted_SO": 1.0582
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.187,
"after": 0.3081,
"delta": 0.1211,
"percent_delta": 0.6476,
"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": 3.509,
"after": 5.5141,
"delta": 2.0051,
"percent_delta": 0.5714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2489,
"delta": 0.0039,
"percent_delta": 0.0159,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.187,
"after": 0.3124,
"delta": 0.1254,
"percent_delta": 0.6706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.3325,
"delta": 0.5625,
"percent_delta": 0.7305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1931,
"delta": 0.0931,
"percent_delta": 0.931,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.3023,
"delta": 0.0023,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.468,
"after": 0.7945,
"delta": 0.3265,
"percent_delta": 0.6976,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.514,
"delta": 0.184,
"percent_delta": 0.5576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.4087,
"delta": 0.0147,
"percent_delta": 0.0373,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.667,
"after": 1.0582,
"delta": 0.3912,
"percent_delta": 0.5865,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.509,
"after": 5.5141,
"delta": 2.0051,
"percent_delta": 0.5714,
"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": 9,
"season": 53
}
},
{
"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.3081,
"predicted_3B": 0.0004,
"predicted_AB": 5.5141,
"predicted_AVG": 0.2438,
"predicted_BB": 0.3148,
"predicted_H": 1.3441,
"predicted_HBP": 0.124,
"predicted_HR": 0.1951,
"predicted_OBP": 0.2846,
"predicted_R": 0.808,
"predicted_RBI": 0.5227,
"predicted_SLG": 0.4059,
"predicted_SO": 1.0502
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3081,
"after": 0.3081,
"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": 5.5141,
"after": 5.5141,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2489,
"after": 0.2438,
"delta": -0.0051,
"percent_delta": -0.0205,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3124,
"after": 0.3148,
"delta": 0.0024,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3325,
"after": 1.3441,
"delta": 0.0116,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.124,
"after": 0.124,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1931,
"after": 0.1951,
"delta": 0.002,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3023,
"after": 0.2846,
"delta": -0.0177,
"percent_delta": -0.0586,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7945,
"after": 0.808,
"delta": 0.0135,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.514,
"after": 0.5227,
"delta": 0.0087,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4087,
"after": 0.4059,
"delta": -0.0028,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0582,
"after": 1.0502,
"delta": -0.008,
"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_OBP",
"before": 0.3023,
"after": 0.2846,
"delta": -0.0177,
"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 6 (raw=5.51), rates preserved: AVG=0.244 HR/AB=0.035",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.3081,
"after": 0.0,
"delta": -0.3081,
"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": 5.5141,
"after": 6.0,
"delta": 0.4859,
"percent_delta": 0.0881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3148,
"after": 0.0,
"delta": -0.3148,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3441,
"after": 1.0,
"delta": -0.3441,
"percent_delta": -0.256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.124,
"after": 0.0,
"delta": -0.124,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1951,
"after": 0.0,
"delta": -0.1951,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5227,
"after": 1.0,
"delta": 0.4773,
"percent_delta": 0.9131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0502,
"after": 1.0,
"delta": -0.0502,
"percent_delta": -0.0478,
"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": 5.5141,
"after": 6.0,
"delta": 0.4859,
"percent_delta": 0.0881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3441,
"after": 1.0,
"delta": -0.3441,
"percent_delta": -0.256,
"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.600)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 0.0,
"predicted_H": 2.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": 6.0,
"after": 6.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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"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": 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": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"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": {
"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": 6.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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 0.808,
"after": 1.0,
"delta": 0.192,
"percent_delta": 0.2376,
"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.808,
"after": 1.0,
"delta": 0.192,
"percent_delta": 0.2376,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 2.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2438,
"after": 0.333,
"delta": 0.0892,
"percent_delta": 0.3659,
"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": 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_OBP",
"before": 0.2846,
"after": 0.333,
"delta": 0.0484,
"percent_delta": 0.1701,
"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.4059,
"after": 0.333,
"delta": -0.0729,
"percent_delta": -0.1796,
"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.2438,
"after": 0.333,
"delta": 0.0892,
"percent_delta": 0.3659,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4059,
"after": 0.333,
"delta": -0.0729,
"percent_delta": -0.1796,
"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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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.2438,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2846,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4059,
"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": 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.2438,
"delta": -0.0892,
"percent_delta": -0.268,
"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.2846,
"delta": -0.0484,
"percent_delta": -0.1454,
"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.4059,
"delta": 0.0729,
"percent_delta": 0.2191,
"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.4059,
"delta": 0.0729,
"percent_delta": 0.2191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2438,
"delta": -0.0892,
"percent_delta": -0.268,
"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.187,
"after": 0.0,
"delta": -0.187,
"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.509,
"after": 3.0,
"delta": -0.509,
"percent_delta": -0.1451,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2438,
"delta": -0.0012,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.187,
"after": 1.0,
"delta": 0.813,
"percent_delta": 4.3476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"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.3,
"after": 0.2846,
"delta": -0.0154,
"percent_delta": -0.0513,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.468,
"after": 0.0,
"delta": -0.468,
"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.394,
"after": 0.4059,
"delta": 0.0119,
"percent_delta": 0.0302,
"direction": "boost",
"projection_effect": "better",
"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": 2,
"deboosted_metrics": 8,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.187,
"after": 1.0,
"delta": 0.813,
"percent_delta": 4.3476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"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.187 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.509 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.187 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.300 | - |
| predicted_R | 0.468 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.394 | - |
| 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.308 | 0.121 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.514 | 2.005 |
| predicted_AVG | 0.249 | 0.004 |
| predicted_BB | 0.312 | 0.125 |
| predicted_H | 1.333 | 0.562 |
| predicted_HBP | 0.124 | - |
| predicted_HR | 0.193 | 0.093 |
| predicted_OBP | 0.302 | 0.002 |
| predicted_R | 0.794 | 0.326 |
| predicted_RBI | 0.514 | 0.184 |
| predicted_SLG | 0.409 | 0.015 |
| predicted_SO | 1.058 | 0.391 |
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.308 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.514 | 0.000 |
| predicted_AVG | 0.244 | -0.005 |
| predicted_BB | 0.315 | 0.002 |
| predicted_H | 1.344 | 0.012 |
| predicted_HBP | 0.124 | 0.000 |
| predicted_HR | 0.195 | 0.002 |
| predicted_OBP | 0.285 | -0.018 |
| predicted_R | 0.808 | 0.014 |
| predicted_RBI | 0.523 | 0.009 |
| predicted_SLG | 0.406 | -0.003 |
| predicted_SO | 1.050 | -0.008 |
AB rounded to 6 (raw=5.51), rates preserved: AVG=0.244 HR/AB=0.035
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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.600)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 2.000 | 1.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 | 6.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.308 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.486 |
| predicted_AVG | 0.333 | 0.089 |
| predicted_BB | 0.000 | -0.315 |
| predicted_H | 2.000 | 0.656 |
| predicted_HR | 0.000 | -0.195 |
| predicted_OBP | 0.333 | 0.048 |
| predicted_R | 1.000 | 0.192 |
| predicted_RBI | 1.000 | 0.477 |
| predicted_SLG | 0.333 | -0.073 |
| predicted_SO | 1.000 | -0.050 |
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 | -3.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 3.000 | 1.000 | 0.000 | 1.000 | 1.000 | 3.000 | 1.000 | 3.000 | 0.2000 | 0.2500 | 0.4667 | 0.2000 | 0.0667 | 0.0667 | 0.0667 | 0.2000 |
| last_10 | 0.20 | 9 | - | 32.000 | 8.000 | 2.000 | 0.000 | 1.000 | 2.000 | 5.000 | 2.000 | 6.000 | 0.2500 | 0.2941 | 0.4062 | 0.2500 | 0.0312 | 0.0625 | 0.0625 | 0.1875 |
| season | 0.60 | 53 | - | 600.000 | 164.000 | 32.000 | 0.000 | 19.000 | 64.000 | 80.000 | 32.000 | 114.000 | 0.2733 | 0.3261 | 0.4217 | 0.2733 | 0.0317 | 0.1067 | 0.0533 | 0.1900 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4640 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.0970 |
| predicted_AVG | 0.2540 |
| predicted_BB | 0.4740 |
| predicted_H | 2.0570 |
| predicted_HBP | 0.1240 |
| predicted_HR | 0.3130 |
| predicted_OBP | 0.3053 |
| predicted_R | 1.2150 |
| predicted_RBI | 0.7510 |
| predicted_SLG | 0.4276 |
| predicted_SO | 1.5620 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1870 | 0.4640 | 0.3081 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.5090 | 8.0970 | 5.5141 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2540 | 0.2489 | model_form_blend |
| predicted_BB | 0.1870 | 0.4740 | 0.3124 | model_form_blend |
| predicted_H | 0.7700 | 2.0570 | 1.3325 | model_form_blend |
| predicted_HBP | - | 0.1240 | 0.1240 | form_only |
| predicted_HR | 0.1000 | 0.3130 | 0.1931 | model_form_blend |
| predicted_OBP | 0.3000 | 0.3053 | 0.3023 | model_form_blend |
| predicted_R | 0.4680 | 1.2150 | 0.7945 | model_form_blend |
| predicted_RBI | 0.3300 | 0.7510 | 0.5140 | model_form_blend |
| predicted_SLG | 0.3940 | 0.4276 | 0.4087 | model_form_blend |
| predicted_SO | 0.6670 | 1.5620 | 1.0582 | 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 | 171 |
| 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.273 |
| 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 | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | RF |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 676609 |
| playerID | 676609 |
| playerName | José Caballero |
| pos | SS |
| started | True |
| startingPosition | RF |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.5 |
| sl_bb_percent | 5.3 |
| sl_woba | 0.315 |
| sl_xwoba | 0.284 |
| sl_xba | 0.24 |
| sl_xslg | 0.34 |
| sl_sweet_spot_percent | 31.4 |
| sl_barrel_batted_rate | 2.9 |
| sl_hard_hit_percent | 26.4 |
| sl_exit_velocity_avg | 83.2 |
| sl_launch_angle_avg | 10.4 |
| sl_whiff_percent | 25.9 |
| 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.101 | 1.000 | 0.000 | Hitting_2B | 0.098 | 0.000 | 0.902 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.335 | 3.000 | 5.000 | Hitting_AB | 3.233 | 0.000 | -0.233 | 3.000 |
| predicted_AVG | 0.253 | 0.333 | 0.200 | Hitting_AVG | 0.201 | - | 0.132 | - |
| predicted_BB | 0.272 | 1.000 | 0.000 | Hitting_BB | 0.270 | 0.000 | 0.730 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.650 | 1.000 | 1.000 | Hitting_H | 0.650 | 0.000 | 0.350 | 1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.110 | 0.000 | -0.110 | 0.000 |
| predicted_OBP | 0.284 | 0.500 | 0.200 | Hitting_OBP | 0.263 | - | 0.237 | - |
| predicted_R | 0.335 | 1.000 | 1.000 | Hitting_R | 0.331 | 0.000 | 0.669 | 1.000 |
| predicted_RBI | 0.340 | 2.000 | 1.000 | Hitting_RBI | 0.411 | 0.000 | 1.589 | 2.000 |
| predicted_SLG | 0.372 | 0.667 | 0.200 | Hitting_SLG | 0.334 | - | 0.333 | - |
| predicted_SO | 1.114 | 0.000 | 2.000 | Hitting_SO | 1.080 | 0.000 | -1.080 | 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_RBI: 0.3400 -> 2.0000 (boost 1.6600, better) |
| Biggest Deboost | predicted_SO: 1.1140 -> 0.0000 (deboost -1.1140, 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 | 8 | 7 | 1 | 6 | 2 | predicted_AB: 3.3350 -> 5.2171 (boost 1.8821, better) | predicted_AVG: 0.2530 -> 0.2463 (deboost -0.0067, 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.2463 -> 0.2241 (deboost -0.0222, 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.6349 -> 1.0000 (boost 0.3651, better) | predicted_BB: 0.3451 -> 0.0000 (deboost -0.3451, worse) | AB rounded to 5 (raw=5.22), rates preserved: AVG=0.224 HR/AB=0.035 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5736 -> 1.0000 (boost 0.4264, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3529 -> 0.2000 (deboost -0.1529, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 3 | 2 | 4 | 1 | predicted_2B: 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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.3529 (boost 0.1529, better) | - | 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.101,
"predicted_3B": 0.0,
"predicted_AB": 3.335,
"predicted_AVG": 0.253,
"predicted_BB": 0.272,
"predicted_H": 0.65,
"predicted_HR": 0.1,
"predicted_OBP": 0.284,
"predicted_R": 0.335,
"predicted_RBI": 0.34,
"predicted_SLG": 0.372,
"predicted_SO": 1.114
},
"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.1306,
"predicted_3B": 0.0004,
"predicted_AB": 5.2171,
"predicted_AVG": 0.2463,
"predicted_BB": 0.3425,
"predicted_H": 1.159,
"predicted_HBP": 0.003,
"predicted_HR": 0.1784,
"predicted_OBP": 0.2821,
"predicted_R": 0.564,
"predicted_RBI": 0.6243,
"predicted_SLG": 0.371,
"predicted_SO": 1.7287
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.101,
"after": 0.1306,
"delta": 0.0296,
"percent_delta": 0.2931,
"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.335,
"after": 5.2171,
"delta": 1.8821,
"percent_delta": 0.5643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2463,
"delta": -0.0067,
"percent_delta": -0.0265,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.272,
"after": 0.3425,
"delta": 0.0705,
"percent_delta": 0.2592,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 1.159,
"delta": 0.509,
"percent_delta": 0.7831,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1784,
"delta": 0.0784,
"percent_delta": 0.784,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2821,
"delta": -0.0019,
"percent_delta": -0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.335,
"after": 0.564,
"delta": 0.229,
"percent_delta": 0.6836,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.6243,
"delta": 0.2843,
"percent_delta": 0.8362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.371,
"delta": -0.001,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.114,
"after": 1.7287,
"delta": 0.6147,
"percent_delta": 0.5518,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.335,
"after": 5.2171,
"delta": 1.8821,
"percent_delta": 0.5643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2463,
"delta": -0.0067,
"percent_delta": -0.0265,
"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": 53
}
},
{
"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.1306,
"predicted_3B": 0.0004,
"predicted_AB": 5.2171,
"predicted_AVG": 0.2241,
"predicted_BB": 0.3451,
"predicted_H": 1.1691,
"predicted_HBP": 0.003,
"predicted_HR": 0.1803,
"predicted_OBP": 0.2722,
"predicted_R": 0.5736,
"predicted_RBI": 0.6349,
"predicted_SLG": 0.3529,
"predicted_SO": 1.7156
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1306,
"after": 0.1306,
"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": 5.2171,
"after": 5.2171,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2463,
"after": 0.2241,
"delta": -0.0222,
"percent_delta": -0.0901,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3425,
"after": 0.3451,
"delta": 0.0026,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.159,
"after": 1.1691,
"delta": 0.0101,
"percent_delta": 0.0087,
"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.1784,
"after": 0.1803,
"delta": 0.0019,
"percent_delta": 0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2821,
"after": 0.2722,
"delta": -0.0099,
"percent_delta": -0.0351,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.564,
"after": 0.5736,
"delta": 0.0096,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6243,
"after": 0.6349,
"delta": 0.0106,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.3529,
"delta": -0.0181,
"percent_delta": -0.0488,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7287,
"after": 1.7156,
"delta": -0.0131,
"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_AVG",
"before": 0.2463,
"after": 0.2241,
"delta": -0.0222,
"percent_delta": -0.0901,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.22), rates preserved: AVG=0.224 HR/AB=0.035",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1306,
"after": 0.0,
"delta": -0.1306,
"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": 5.2171,
"after": 5.0,
"delta": -0.2171,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3451,
"after": 0.0,
"delta": -0.3451,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1691,
"after": 1.0,
"delta": -0.1691,
"percent_delta": -0.1446,
"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.1803,
"after": 0.0,
"delta": -0.1803,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6349,
"after": 1.0,
"delta": 0.3651,
"percent_delta": 0.5751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7156,
"after": 2.0,
"delta": 0.2844,
"percent_delta": 0.1658,
"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.6349,
"after": 1.0,
"delta": 0.3651,
"percent_delta": 0.5751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3451,
"after": 0.0,
"delta": -0.3451,
"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": 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_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5736,
"after": 1.0,
"delta": 0.4264,
"percent_delta": 0.7434,
"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": 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_R",
"before": 0.5736,
"after": 1.0,
"delta": 0.4264,
"percent_delta": 0.7434,
"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": 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.2241,
"after": 0.2,
"delta": -0.0241,
"percent_delta": -0.1075,
"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.2722,
"after": 0.2,
"delta": -0.0722,
"percent_delta": -0.2652,
"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.3529,
"after": 0.2,
"delta": -0.1529,
"percent_delta": -0.4333,
"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_SLG",
"before": 0.3529,
"after": 0.2,
"delta": -0.1529,
"percent_delta": -0.4333,
"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": 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": 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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"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_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": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"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.2241,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2722,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3529,
"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.2,
"after": 0.2241,
"delta": 0.0241,
"percent_delta": 0.1204,
"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.2,
"after": 0.2722,
"delta": 0.0722,
"percent_delta": 0.3611,
"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.2,
"after": 0.3529,
"delta": 0.1529,
"percent_delta": 0.7647,
"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.3529,
"delta": 0.1529,
"percent_delta": 0.7647,
"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.101,
"after": 1.0,
"delta": 0.899,
"percent_delta": 8.901,
"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.335,
"after": 3.0,
"delta": -0.335,
"percent_delta": -0.1004,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2241,
"delta": -0.0289,
"percent_delta": -0.1142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.272,
"after": 1.0,
"delta": 0.728,
"percent_delta": 2.6765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 1.0,
"delta": 0.35,
"percent_delta": 0.5385,
"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.284,
"after": 0.2722,
"delta": -0.0118,
"percent_delta": -0.0415,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.335,
"after": 1.0,
"delta": 0.665,
"percent_delta": 1.9851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 2.0,
"delta": 1.66,
"percent_delta": 4.8824,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3529,
"delta": -0.0191,
"percent_delta": -0.0513,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.114,
"after": 0.0,
"delta": -1.114,
"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.34,
"after": 2.0,
"delta": 1.66,
"percent_delta": 4.8824,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.114,
"after": 0.0,
"delta": -1.114,
"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.101 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.335 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.272 | - |
| predicted_H | 0.650 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.284 | - |
| predicted_R | 0.335 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.372 | - |
| predicted_SO | 1.114 | - |
Final model 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.131 | 0.030 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.217 | 1.882 |
| predicted_AVG | 0.246 | -0.007 |
| predicted_BB | 0.343 | 0.071 |
| predicted_H | 1.159 | 0.509 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.178 | 0.078 |
| predicted_OBP | 0.282 | -0.002 |
| predicted_R | 0.564 | 0.229 |
| predicted_RBI | 0.624 | 0.284 |
| predicted_SLG | 0.371 | -0.001 |
| predicted_SO | 1.729 | 0.615 |
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.131 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.217 | 0.000 |
| predicted_AVG | 0.224 | -0.022 |
| predicted_BB | 0.345 | 0.003 |
| predicted_H | 1.169 | 0.010 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.180 | 0.002 |
| predicted_OBP | 0.272 | -0.010 |
| predicted_R | 0.574 | 0.010 |
| predicted_RBI | 0.635 | 0.011 |
| predicted_SLG | 0.353 | -0.018 |
| predicted_SO | 1.716 | -0.013 |
AB rounded to 5 (raw=5.22), rates preserved: AVG=0.224 HR/AB=0.035
| 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 | 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 | 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 | 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.131 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.217 |
| predicted_AVG | 0.200 | -0.024 |
| predicted_BB | 0.000 | -0.345 |
| predicted_H | 1.000 | -0.169 |
| predicted_HR | 0.000 | -0.180 |
| predicted_OBP | 0.200 | -0.072 |
| predicted_R | 1.000 | 0.426 |
| predicted_RBI | 1.000 | 0.365 |
| predicted_SLG | 0.200 | -0.153 |
| predicted_SO | 2.000 | 0.284 |
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 | -2.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 | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.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 | - | 14.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 5.000 | 0.2857 | 0.2857 | 0.2857 | 0.2857 | 0.0000 | 0.0714 | 0.0000 | 0.3571 |
| last_10 | 0.20 | 7 | - | 34.000 | 13.000 | 0.000 | 0.000 | 5.000 | 10.000 | 10.000 | 0.000 | 10.000 | 0.3824 | 0.3824 | 0.8235 | 0.3824 | 0.1471 | 0.2941 | 0.0000 | 0.2941 |
| season | 0.60 | 53 | - | 527.000 | 106.000 | 16.000 | 0.000 | 18.000 | 67.000 | 53.000 | 43.000 | 176.000 | 0.2011 | 0.2614 | 0.3340 | 0.2011 | 0.0342 | 0.1271 | 0.0816 | 0.3340 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1690 |
| predicted_3B | 0.0010 |
| predicted_AB | 7.6580 |
| predicted_AVG | 0.2375 |
| predicted_BB | 0.4340 |
| predicted_H | 1.8190 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.2800 |
| predicted_OBP | 0.2797 |
| predicted_R | 0.8610 |
| predicted_RBI | 0.9930 |
| predicted_SLG | 0.3696 |
| predicted_SO | 2.5260 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1010 | 0.1690 | 0.1306 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.3350 | 7.6580 | 5.2171 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2375 | 0.2463 | model_form_blend |
| predicted_BB | 0.2720 | 0.4340 | 0.3425 | model_form_blend |
| predicted_H | 0.6500 | 1.8190 | 1.1590 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1000 | 0.2800 | 0.1784 | model_form_blend |
| predicted_OBP | 0.2840 | 0.2797 | 0.2821 | model_form_blend |
| predicted_R | 0.3350 | 0.8610 | 0.5640 | model_form_blend |
| predicted_RBI | 0.3400 | 0.9930 | 0.6243 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3696 | 0.3710 | model_form_blend |
| predicted_SO | 1.1140 | 2.5260 | 1.7287 | 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 | 163 |
| Season rows before report date | 163 |
| Report year | 2026 |
| Profile rows used | 158 |
| 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 | 2 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.201 |
| 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 | 3B |
| gameID | 20260607_BOS@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-07 |
| sl_k_percent | 31.4 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.272 |
| sl_xwoba | 0.282 |
| sl_xba | 0.218 |
| sl_xslg | 0.369 |
| sl_sweet_spot_percent | 29.2 |
| sl_barrel_batted_rate | 9.5 |
| sl_hard_hit_percent | 49.1 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 12.7 |
| sl_whiff_percent | 31.6 |
| sl_swing_percent | 46.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.190 | 0.000 | 0.000 | Hitting_2B | 0.182 | 0.000 | -0.182 | 0.000 |
| predicted_3B | 0.063 | 0.000 | 0.000 | Hitting_3B | 0.061 | 0.000 | -0.061 | 0.000 |
| predicted_AB | 3.397 | 4.000 | 6.000 | Hitting_AB | 3.242 | 0.000 | 0.758 | 4.000 |
| predicted_AVG | 0.239 | 0.000 | 0.167 | Hitting_AVG | 0.220 | - | -0.220 | - |
| predicted_BB | 0.238 | 0.000 | 0.000 | Hitting_BB | 0.242 | 0.000 | -0.242 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.580 | 0.000 | 1.000 | Hitting_H | 0.712 | 0.000 | -0.712 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.267 | 0.000 | 0.167 | Hitting_OBP | 0.269 | - | -0.269 | - |
| predicted_R | 0.254 | 0.000 | 0.000 | Hitting_R | 0.258 | 0.000 | -0.258 | 0.000 |
| predicted_RBI | 0.310 | 0.000 | 1.000 | Hitting_RBI | 0.424 | 0.000 | -0.424 | 0.000 |
| predicted_SLG | 0.315 | 0.000 | 0.167 | Hitting_SLG | 0.313 | - | -0.313 | - |
| predicted_SO | 0.841 | 1.000 | 1.000 | Hitting_SO | 0.803 | 0.000 | 0.197 | 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_AB: 3.3970 -> 4.0000 (boost 0.6030, better) |
| Biggest Deboost | predicted_H: 0.5800 -> 0.0000 (deboost -0.5800, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.3970 -> 5.7143 (boost 2.3173, 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.3299 -> 0.3383 (boost 0.0084, better) | predicted_AVG: 0.2522 -> 0.2381 (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 | 7 | 2 | 5 | 3 | 4 | predicted_RBI: 0.5813 -> 1.0000 (boost 0.4187, better) | predicted_BB: 0.3792 -> 0.0000 (deboost -0.3792, worse) | AB rounded to 6 (raw=5.71), rates preserved: AVG=0.238 HR/AB=0.008 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3948 -> 0.0000 (deboost -0.3948, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3383 -> 0.1670 (deboost -0.1713, 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_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3383 (boost 0.1713, better) | - | 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.19,
"predicted_3B": 0.063,
"predicted_AB": 3.397,
"predicted_AVG": 0.239,
"predicted_BB": 0.238,
"predicted_H": 0.58,
"predicted_HR": 0.05,
"predicted_OBP": 0.267,
"predicted_R": 0.254,
"predicted_RBI": 0.31,
"predicted_SLG": 0.315,
"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.2708,
"predicted_3B": 0.0847,
"predicted_AB": 5.7143,
"predicted_AVG": 0.2522,
"predicted_BB": 0.3763,
"predicted_H": 1.3487,
"predicted_HBP": 0.009,
"predicted_HR": 0.0438,
"predicted_OBP": 0.2859,
"predicted_R": 0.3882,
"predicted_RBI": 0.5716,
"predicted_SLG": 0.3299,
"predicted_SO": 1.313
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.19,
"after": 0.2708,
"delta": 0.0808,
"percent_delta": 0.4253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.063,
"after": 0.0847,
"delta": 0.0217,
"percent_delta": 0.3444,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.397,
"after": 5.7143,
"delta": 2.3173,
"percent_delta": 0.6822,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2522,
"delta": 0.0132,
"percent_delta": 0.0552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.238,
"after": 0.3763,
"delta": 0.1383,
"percent_delta": 0.5811,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 1.3487,
"delta": 0.7687,
"percent_delta": 1.3253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0438,
"delta": -0.0062,
"percent_delta": -0.124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.267,
"after": 0.2859,
"delta": 0.0189,
"percent_delta": 0.0708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.254,
"after": 0.3882,
"delta": 0.1342,
"percent_delta": 0.5283,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.31,
"after": 0.5716,
"delta": 0.2616,
"percent_delta": 0.8439,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.315,
"after": 0.3299,
"delta": 0.0149,
"percent_delta": 0.0473,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.841,
"after": 1.313,
"delta": 0.472,
"percent_delta": 0.5612,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.397,
"after": 5.7143,
"delta": 2.3173,
"percent_delta": 0.6822,
"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": 3,
"last_10": 5,
"season": 20
}
},
{
"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.2708,
"predicted_3B": 0.0847,
"predicted_AB": 5.7143,
"predicted_AVG": 0.2381,
"predicted_BB": 0.3792,
"predicted_H": 1.3604,
"predicted_HBP": 0.009,
"predicted_HR": 0.0443,
"predicted_OBP": 0.2855,
"predicted_R": 0.3948,
"predicted_RBI": 0.5813,
"predicted_SLG": 0.3383,
"predicted_SO": 1.303
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2708,
"after": 0.2708,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0847,
"after": 0.0847,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.7143,
"after": 5.7143,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2522,
"after": 0.2381,
"delta": -0.0141,
"percent_delta": -0.0559,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3763,
"after": 0.3792,
"delta": 0.0029,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3487,
"after": 1.3604,
"delta": 0.0117,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.009,
"after": 0.009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0438,
"after": 0.0443,
"delta": 0.0005,
"percent_delta": 0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2859,
"after": 0.2855,
"delta": -0.0004,
"percent_delta": -0.0014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3882,
"after": 0.3948,
"delta": 0.0066,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5716,
"after": 0.5813,
"delta": 0.0097,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3299,
"after": 0.3383,
"delta": 0.0084,
"percent_delta": 0.0255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.313,
"after": 1.303,
"delta": -0.01,
"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.3299,
"after": 0.3383,
"delta": 0.0084,
"percent_delta": 0.0255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2522,
"after": 0.2381,
"delta": -0.0141,
"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 6 (raw=5.71), rates preserved: AVG=0.238 HR/AB=0.008",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.2708,
"after": 0.0,
"delta": -0.2708,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0847,
"after": 0.0,
"delta": -0.0847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.7143,
"after": 6.0,
"delta": 0.2857,
"percent_delta": 0.05,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3792,
"after": 0.0,
"delta": -0.3792,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3604,
"after": 1.0,
"delta": -0.3604,
"percent_delta": -0.2649,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0443,
"after": 0.0,
"delta": -0.0443,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5813,
"after": 1.0,
"delta": 0.4187,
"percent_delta": 0.7203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.303,
"after": 1.0,
"delta": -0.303,
"percent_delta": -0.2325,
"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.5813,
"after": 1.0,
"delta": 0.4187,
"percent_delta": 0.7203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3792,
"after": 0.0,
"delta": -0.3792,
"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": 6.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": 6.0,
"after": 6.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.3948,
"after": 0.0,
"delta": -0.3948,
"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.3948,
"after": 0.0,
"delta": -0.3948,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.167,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2381,
"after": 0.167,
"delta": -0.0711,
"percent_delta": -0.2986,
"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.2855,
"after": 0.167,
"delta": -0.1185,
"percent_delta": -0.4151,
"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.3383,
"after": 0.167,
"delta": -0.1713,
"percent_delta": -0.5064,
"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.3383,
"after": 0.167,
"delta": -0.1713,
"percent_delta": -0.5064,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 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": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2381,
"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.2855,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3383,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.167,
"after": 0.2381,
"delta": 0.0711,
"percent_delta": 0.4256,
"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.167,
"after": 0.2855,
"delta": 0.1185,
"percent_delta": 0.7095,
"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.167,
"after": 0.3383,
"delta": 0.1713,
"percent_delta": 1.026,
"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.167,
"after": 0.3383,
"delta": 0.1713,
"percent_delta": 1.026,
"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.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.063,
"after": 0.0,
"delta": -0.063,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.397,
"after": 4.0,
"delta": 0.603,
"percent_delta": 0.1775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2381,
"delta": -0.0009,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.238,
"after": 0.0,
"delta": -0.238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 0.0,
"delta": -0.58,
"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.267,
"after": 0.2855,
"delta": 0.0185,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.254,
"after": 0.0,
"delta": -0.254,
"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.315,
"after": 0.3383,
"delta": 0.0233,
"percent_delta": 0.074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.841,
"after": 1.0,
"delta": 0.159,
"percent_delta": 0.1891,
"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_AB",
"before": 3.397,
"after": 4.0,
"delta": 0.603,
"percent_delta": 0.1775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.58,
"after": 0.0,
"delta": -0.58,
"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.190 | - |
| predicted_3B | 0.063 | - |
| predicted_AB | 3.397 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.238 | - |
| predicted_H | 0.580 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.267 | - |
| predicted_R | 0.254 | - |
| predicted_RBI | 0.310 | - |
| predicted_SLG | 0.315 | - |
| 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.271 | 0.081 |
| predicted_3B | 0.085 | 0.022 |
| predicted_AB | 5.714 | 2.317 |
| predicted_AVG | 0.252 | 0.013 |
| predicted_BB | 0.376 | 0.138 |
| predicted_H | 1.349 | 0.769 |
| predicted_HBP | 0.009 | - |
| predicted_HR | 0.044 | -0.006 |
| predicted_OBP | 0.286 | 0.019 |
| predicted_R | 0.388 | 0.134 |
| predicted_RBI | 0.572 | 0.262 |
| predicted_SLG | 0.330 | 0.015 |
| predicted_SO | 1.313 | 0.472 |
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.085 | 0.000 |
| predicted_AB | 5.714 | 0.000 |
| predicted_AVG | 0.238 | -0.014 |
| predicted_BB | 0.379 | 0.003 |
| predicted_H | 1.360 | 0.012 |
| predicted_HBP | 0.009 | 0.000 |
| predicted_HR | 0.044 | 0.001 |
| predicted_OBP | 0.285 | -0.000 |
| predicted_R | 0.395 | 0.007 |
| predicted_RBI | 0.581 | 0.010 |
| predicted_SLG | 0.338 | 0.008 |
| predicted_SO | 1.303 | -0.010 |
AB rounded to 6 (raw=5.71), rates preserved: AVG=0.238 HR/AB=0.008
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.271 |
| predicted_3B | 0.000 | -0.085 |
| predicted_AB | 6.000 | 0.286 |
| predicted_AVG | 0.167 | -0.071 |
| predicted_BB | 0.000 | -0.379 |
| predicted_H | 1.000 | -0.360 |
| predicted_HR | 0.000 | -0.044 |
| predicted_OBP | 0.167 | -0.118 |
| predicted_R | 0.000 | -0.395 |
| predicted_RBI | 1.000 | 0.419 |
| predicted_SLG | 0.167 | -0.171 |
| predicted_SO | 1.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 | 4.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 | 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 | 3 | - | 19.000 | 9.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 0.4737 | 0.4737 | 0.4737 | 0.4737 | 0.0000 | 0.0000 | 0.0000 | 0.1053 |
| last_10 | 0.20 | 5 | - | 32.000 | 12.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 3.000 | 6.000 | 0.3750 | 0.4167 | 0.3750 | 0.3750 | 0.0000 | 0.0312 | 0.0938 | 0.1875 |
| season | 0.60 | 20 | - | 214.000 | 47.000 | 12.000 | 4.000 | 0.000 | 28.000 | 16.000 | 15.000 | 53.000 | 0.2196 | 0.2661 | 0.3131 | 0.2196 | 0.0000 | 0.1308 | 0.0701 | 0.2477 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3840 |
| predicted_3B | 0.1150 |
| predicted_AB | 8.9590 |
| predicted_AVG | 0.2706 |
| predicted_BB | 0.5700 |
| predicted_H | 2.4250 |
| predicted_HBP | 0.0090 |
| predicted_HR | 0.0350 |
| predicted_OBP | 0.3124 |
| predicted_R | 0.5760 |
| predicted_RBI | 0.9380 |
| predicted_SLG | 0.3508 |
| predicted_SO | 1.9740 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1900 | 0.3840 | 0.2708 | model_form_blend |
| predicted_3B | 0.0630 | 0.1150 | 0.0847 | model_form_blend |
| predicted_AB | 3.3970 | 8.9590 | 5.7143 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2706 | 0.2522 | model_form_blend |
| predicted_BB | 0.2380 | 0.5700 | 0.3763 | model_form_blend |
| predicted_H | 0.5800 | 2.4250 | 1.3487 | model_form_blend |
| predicted_HBP | - | 0.0090 | 0.0090 | form_only |
| predicted_HR | 0.0500 | 0.0350 | 0.0438 | model_form_blend |
| predicted_OBP | 0.2670 | 0.3124 | 0.2859 | model_form_blend |
| predicted_R | 0.2540 | 0.5760 | 0.3882 | model_form_blend |
| predicted_RBI | 0.3100 | 0.9380 | 0.5716 | model_form_blend |
| predicted_SLG | 0.3150 | 0.3508 | 0.3299 | model_form_blend |
| predicted_SO | 0.8410 | 1.9740 | 1.3130 | 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 | 66 |
| Season rows before report date | 66 |
| 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 | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.22 |
| 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 | C |
| gameID | 20260607_BOS@NYY |
| game_type | short |
| mlbID | 641555 |
| playerID | 641555 |
| playerName | J.C. Escarra |
| pos | C |
| started | False |
| startingPosition | C |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 22.1 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.224 |
| sl_xwoba | 0.276 |
| sl_xba | 0.219 |
| sl_xslg | 0.33 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 4.2 |
| sl_hard_hit_percent | 31.3 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 11.5 |
| sl_whiff_percent | 29.5 |
| 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_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.462 | 0.000 | -0.462 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.769 | 0.000 | -0.769 | 1.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 4.462 | 0.000 | 1.538 | 6.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 4.769 | 0.000 | 0.431 | 5.200 |
| predicted_SO | 5.000 | 5.000 | 5.000 | Pitching_SO | 5.385 | 0.000 | -0.385 | 5.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: 4.0000 -> 5.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: 4.0000 -> 5.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": "701542",
"player_name": "Will Warren",
"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": 1.0,
"predicted_ER": 1.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": "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": 1.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_SO": 5.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": 1.0,
"after": 1.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": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"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": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_R": 1.0,
"predicted_SO": 5.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": 1.0,
"after": 1.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": 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": 1.0,
"after": 1.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": 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": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"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": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"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 | 1.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 4.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 | 1.000 | 0.000 |
| predicted_H | 6.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 5.200 | -0.467 |
| predicted_SO | 5.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 | 26.200 | 13.000 | 26.000 | 11.000 | 24.000 | 3.000 | 4.3875 | 1.3875 | 0.4875 | 0.9750 | 0.4125 | 0.9000 | 0.1125 |
| last_10 | 0.35 | 10 | 54.100 | 20.000 | 49.000 | 17.000 | 61.000 | 5.000 | 3.3129 | 1.2147 | 0.3681 | 0.9018 | 0.3129 | 1.1227 | 0.0920 |
| season | 0.20 | 12 | 64.100 | 23.000 | 58.000 | 19.000 | 70.000 | 7.000 | 3.2176 | 1.1969 | 0.3575 | 0.9015 | 0.2953 | 1.0881 | 0.1088 |
| Metric | Value |
|---|---|
| predicted_BB | 1.9400 |
| predicted_ER | 2.3840 |
| predicted_ERA | 3.9497 |
| predicted_H | 5.1130 |
| predicted_HR | 0.6230 |
| predicted_IP | 5.1000 |
| predicted_SO | 5.3860 |
| predicted_WHIP | 1.2986 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.9400 | 1.4942 | model_form_blend |
| predicted_ER | 1.0000 | 2.3840 | 1.7276 | model_form_blend |
| predicted_ERA | - | 3.9497 | 3.9497 | form_only |
| predicted_H | 6.0000 | 5.1130 | 5.5337 | model_form_blend |
| predicted_HR | 1.0000 | 0.6230 | 0.8018 | model_form_blend |
| predicted_IP | 5.2000 | 5.1000 | 5.1000 | model_form_blend |
| predicted_SO | 4.0000 | 5.3860 | 4.7287 | model_form_blend |
| predicted_WHIP | - | 1.2986 | 1.2986 | 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 | 12 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 6 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 5 |
| HR | 1 |
| BF | 24 |
| Pitches | 93 |
| 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 | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.22 |
| 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 | 1 |
| allPositionsPlayed | P |
| gameID | 20260606_BOS@NYY |
| game_type | full |
| mlbID | 701542 |
| playerID | 701542 |
| playerName | Will Warren |
| pos | P |
| started | True |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-06 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.29 |
| sl_xwoba | 0.29 |
| sl_sweet_spot_percent | 33.7 |
| sl_barrel_batted_rate | 6.6 |
| sl_hard_hit_percent | 39.8 |
| sl_whiff_percent | 24.1 |
| sl_swing_percent | 44.0 |
| sl_avg_best_speed | 79.969016778 |
| sl_avg_hyper_speed | 94.804573 |
| 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.423 | 0.000 | -0.423 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.462 | 0.000 | -0.462 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.038 | 0.000 | -0.038 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.946 | 1.000 | 0.054 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.154 | 1.000 | -1.154 | -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": "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.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 | 2.000 | 2.000 | 5.000 | 0.000 | 0.0000 | 0.8000 | 0.0000 | 0.4000 | 0.4000 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 6.000 | 9.000 | 6.000 | 11.000 | 2.000 | 5.5862 | 1.5517 | 0.6207 | 0.9310 | 0.6207 | 1.1379 | 0.2069 |
| season | 0.20 | 26 | 26.000 | 12.000 | 27.000 | 11.000 | 30.000 | 2.000 | 4.1538 | 1.4615 | 0.4615 | 1.0385 | 0.4231 | 1.1539 | 0.0769 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4240 |
| predicted_ER | 0.3960 |
| predicted_ERA | 3.5643 |
| predicted_H | 0.8340 |
| predicted_HR | 0.1130 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0080 |
| predicted_WHIP | 1.2578 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4240 | 0.1872 | model_form_blend |
| predicted_ER | 0.0000 | 0.3960 | 0.1748 | model_form_blend |
| predicted_ERA | - | 3.5643 | 3.5643 | form_only |
| predicted_H | 1.0000 | 0.8340 | 0.9267 | model_form_blend |
| predicted_HR | 0.0000 | 0.1130 | 0.0499 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0080 | 0.4451 | model_form_blend |
| predicted_WHIP | - | 1.2578 | 1.2578 | 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 | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| 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 | 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 | 11 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 670280 |
| playerID | 670280 |
| playerName | David Bednar |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.6 |
| sl_bb_percent | 9.4 |
| sl_woba | 0.318 |
| sl_xwoba | 0.267 |
| sl_sweet_spot_percent | 18.7 |
| sl_barrel_batted_rate | 4.0 |
| sl_hard_hit_percent | 40.0 |
| sl_whiff_percent | 29.6 |
| sl_swing_percent | 52.6 |
| sl_avg_best_speed | 75.414721622 |
| sl_avg_hyper_speed | 93.697176712 |
| 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.452 | 0.000 | -0.452 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.194 | 0.000 | -0.194 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.613 | 1.000 | -0.613 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.652 | 0.200 | 0.348 | 0.800 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.065 | 0.000 | -0.065 | 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: 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 | 1 | 0 | 1 | 0 | 1 | - | 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": "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": 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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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 | 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 | 4.200 | 1.000 | 3.000 | 0.000 | 3.000 | 0.000 | 1.9286 | 0.6429 | 0.2143 | 0.6429 | 0.0000 | 0.6429 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 1.000 | 5.000 | 3.000 | 8.000 | 0.000 | 0.9310 | 0.8276 | 0.1035 | 0.5172 | 0.3103 | 0.8276 | 0.0000 |
| season | 0.20 | 31 | 27.200 | 6.000 | 19.000 | 14.000 | 33.000 | 2.000 | 1.9518 | 1.1928 | 0.2169 | 0.6867 | 0.5060 | 1.1928 | 0.0723 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2840 |
| predicted_ER | 0.3240 |
| predicted_ERA | 2.9123 |
| predicted_H | 0.7750 |
| predicted_HR | 0.0740 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8730 |
| predicted_WHIP | 1.0586 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2840 | 0.1273 | model_form_blend |
| predicted_ER | 0.0000 | 0.3240 | 0.1452 | model_form_blend |
| predicted_ERA | - | 2.9123 | 2.9123 | form_only |
| predicted_H | 0.0000 | 0.7750 | 0.3473 | model_form_blend |
| predicted_HR | 0.0000 | 0.0740 | 0.0332 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.8730 | 1.4950 | model_form_blend |
| predicted_WHIP | - | 1.0586 | 1.0586 | 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 | 1.95 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 518585 |
| playerID | 518585 |
| playerName | Fernando Cruz |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 28.9 |
| sl_bb_percent | 12.3 |
| sl_woba | 0.275 |
| sl_xwoba | 0.282 |
| sl_sweet_spot_percent | 30.8 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 24.6 |
| sl_whiff_percent | 41.5 |
| sl_swing_percent | 43.7 |
| sl_avg_best_speed | 74.242275313 |
| sl_avg_hyper_speed | 92.600420313 |
| 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.200 | 0.000 | -0.200 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.867 | 0.000 | -0.867 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.670 | 1.000 | 0.330 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.433 | 0.000 | 1.567 | 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": "657612",
"player_name": "Tim Hill",
"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 | 4.100 | 6.000 | 8.000 | 1.000 | 3.000 | 2.000 | 12.4615 | 2.0769 | 1.3846 | 1.8461 | 0.2308 | 0.6923 | 0.4615 |
| last_10 | 0.35 | 10 | 7.200 | 7.000 | 11.000 | 3.000 | 6.000 | 2.000 | 8.2174 | 1.8261 | 0.9130 | 1.4348 | 0.3913 | 0.7826 | 0.2609 |
| season | 0.20 | 29 | 25.000 | 9.000 | 23.000 | 5.000 | 13.000 | 3.000 | 3.2400 | 1.1200 | 0.3600 | 0.9200 | 0.2000 | 0.5200 | 0.1200 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3040 |
| predicted_ER | 0.7050 |
| predicted_ERA | 6.7323 |
| predicted_H | 1.1640 |
| predicted_HR | 0.2170 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7660 |
| predicted_WHIP | 1.5583 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3040 | 0.1330 | model_form_blend |
| predicted_ER | 0.0000 | 0.7050 | 0.3084 | model_form_blend |
| predicted_ERA | - | 6.7323 | 6.7323 | form_only |
| predicted_H | 0.0000 | 1.1640 | 0.5091 | model_form_blend |
| predicted_HR | 0.0000 | 0.2170 | 0.0949 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.7660 | 1.4603 | model_form_blend |
| predicted_WHIP | - | 1.5583 | 1.5583 | 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 | 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 | 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.32 |
| 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 | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 657612 |
| playerID | 657612 |
| playerName | Tim Hill |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 12.1 |
| sl_bb_percent | 5.6 |
| sl_woba | 0.314 |
| sl_xwoba | 0.334 |
| sl_sweet_spot_percent | 23.3 |
| sl_barrel_batted_rate | 4.7 |
| sl_hard_hit_percent | 44.2 |
| sl_whiff_percent | 13.3 |
| sl_swing_percent | 52.8 |
| sl_avg_best_speed | 77.538292619 |
| sl_avg_hyper_speed | 95.369943855 |
| 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.387 | 0.000 | -0.387 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.194 | 0.000 | -0.194 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.903 | 1.000 | -0.903 | -1.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 0.768 | 0.200 | -0.668 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.097 | 0.000 | -1.097 | 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": "687396",
"player_name": "Brent Headrick",
"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": 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 | 4.100 | 0.000 | 4.000 | 3.000 | 5.000 | 0.000 | 0.0000 | 1.6154 | 0.0000 | 0.9231 | 0.6923 | 1.1539 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 2.000 | 10.000 | 4.000 | 12.000 | 1.000 | 1.9286 | 1.5000 | 0.2143 | 1.0714 | 0.4286 | 1.2857 | 0.1071 |
| season | 0.20 | 31 | 30.100 | 6.000 | 28.000 | 12.000 | 34.000 | 2.000 | 1.7802 | 1.3187 | 0.1978 | 0.9231 | 0.3956 | 1.1209 | 0.0659 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3210 |
| predicted_ER | 0.1970 |
| predicted_ERA | 2.5473 |
| predicted_H | 0.6740 |
| predicted_HR | 0.0630 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7490 |
| predicted_WHIP | 1.4275 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3210 | 0.1469 | model_form_blend |
| predicted_ER | 0.0000 | 0.1970 | 0.0902 | model_form_blend |
| predicted_ERA | - | 2.5473 | 2.5473 | form_only |
| predicted_H | 0.0000 | 0.6740 | 0.3085 | model_form_blend |
| predicted_HR | 0.0000 | 0.0630 | 0.0288 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7490 | 0.3429 | model_form_blend |
| predicted_WHIP | - | 1.4275 | 1.4275 | 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 | 0.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| 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 | 1.78 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 9 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260607_BOS@NYY |
| game_type | full |
| mlbID | 687396 |
| playerID | 687396 |
| playerName | Brent Headrick |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-07 |
| sl_k_percent | 26.4 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.302 |
| sl_xwoba | 0.292 |
| sl_sweet_spot_percent | 39.8 |
| sl_barrel_batted_rate | 4.8 |
| sl_hard_hit_percent | 41.0 |
| sl_whiff_percent | 30.6 |
| sl_swing_percent | 52.9 |
| sl_avg_best_speed | 80.26818875 |
| sl_avg_hyper_speed | 94.444300506 |
| Field | Value |
|---|---|
| Pitcher | Gavin Williams |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1560 |
| ESPN Rank | 19 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0395 |
| Avg Velo | 90.4153 |
| Avg Spin | 2270.3481 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6.1000 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 5 |
| Pre SO | 7 |
| Season ERA | 3.1959 |
| Season WHIP | 1.0776 |
| Role Avg IP | 6.2820 |
| Recent Avg IP | 6.4670 |
| Last Start IP | 5.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"opponent": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"edges": {
"quality_edge": -0.1592,
"offense_edge": -0.0392,
"opponent_offense_edge": 0.0696,
"defense_strength": 0.0574,
"opponent_defense_weakness": -0.2396,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9926,
"run_prevention": 1.0134,
"strikeout": 0.9897
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "668909",
"profile": {
"available": true,
"pitcher_id": "668909",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 301.0,
"k_percent": 29.0,
"bb_percent": 7.7,
"woba": 0.294,
"xwoba": 0.323,
"sweet_spot_percent": 33.5,
"barrel_batted_rate": 12.7,
"hard_hit_percent": 48.2,
"avg_best_speed": 80.0909,
"avg_hyper_speed": 95.7317,
"whiff_percent": 30.9,
"swing_percent": 49.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4692,
"command_and_miss": 0.7171,
"regression_edge": -0.8286,
"xwoba_edge": -0.2429,
"barrel_edge": -1.2444,
"hard_hit_edge": -1.3714,
"whiff_edge": 0.7286,
"bb_edge": 0.35,
"pitch_design_score": 0.0395
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "668909",
"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": 90.41526630271176,
"release_spin_rate": 2270.34814581588,
"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": 90.41526630271176,
"release_spin_rate": 2270.34814581588,
"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.4153,
"release_spin_rate": 2270.3481,
"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.0395,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.282,
"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.156,
"sample_weight": 1.0,
"run_prevention_factor": 1.0133,
"strikeout_factor": 1.064,
"walk_factor": 0.972,
"homer_factor": 1.1617,
"woba_minus_xwoba": -0.029,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668909",
"espn_id": 4345076,
"player_name": "Gavin Williams",
"team": "CLE",
"role": "pitcher",
"espn_rank": 19,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 19,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 6.0,
"qs_rank": 26,
"era_value": 3.1959,
"era_rank": 23.0,
"w_value": 9.0,
"w_rank": 1,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 81.2,
"ip_rank": 6,
"h_value": 63.0,
"h_rank": 52,
"er_value": 29.0,
"er_rank": 69,
"hr_value": 11.0,
"hr_rank": 23,
"bb_value": 25.0,
"bb_rank": 36,
"k_value": 94.0,
"k_rank": 3,
"k_per_9_value": 10.359184,
"k_per_9_rank": 13,
"whip_value": 1.0775,
"whip_rank": 17.0,
"war_value": 1.96,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0133,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.0133,
"adjusted": 5
},
"predicted_BB": {
"original": 1.0,
"factor": 0.972,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.1617,
"adjusted": 1
},
"predicted_SO": {
"original": 7.0,
"factor": 1.064,
"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": 64.0,
"ER": 25,
"H": 58,
"BB": 11,
"SO": 69,
"HR": 9,
"ERA": 3.515625,
"WHIP": 1.078125,
"K9": 9.703125,
"HR9": 1.265625,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "668909",
"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": 90.41526630271176,
"release_spin_rate": 2270.34814581588,
"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": 90.41526630271176,
"release_spin_rate": 2270.34814581588,
"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.4153,
"release_spin_rate": 2270.3481,
"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.0395,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.282,
"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": "668909",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 6.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 32.1,
"ER": 11.0,
"R": 11.0,
"H": 30.0,
"BB": 4.0,
"SO": 34.0,
"HR": 3.0,
"BF": 126.0,
"Pitches": 483.0
},
"per_game": {
"IP": 6.1,
"ER": 2.2,
"R": 2.2,
"H": 6.0,
"BB": 0.8,
"SO": 6.8,
"HR": 0.6,
"BF": 25.2,
"Pitches": 96.6
},
"rates": {
"ERA": 3.0619,
"WHIP": 1.0515,
"ER_per_IP": 0.34021,
"H_per_IP": 0.92784,
"BB_per_IP": 0.12371,
"SO_per_IP": 1.05155,
"HR_per_IP": 0.09278
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 64.0,
"ER": 25.0,
"R": 26.0,
"H": 58.0,
"BB": 11.0,
"SO": 69.0,
"HR": 9.0,
"BF": 257.0,
"Pitches": 964.0
},
"per_game": {
"IP": 6.1,
"ER": 2.5,
"R": 2.6,
"H": 5.8,
"BB": 1.1,
"SO": 6.9,
"HR": 0.9,
"BF": 25.7,
"Pitches": 96.4
},
"rates": {
"ERA": 3.5156,
"WHIP": 1.0781,
"ER_per_IP": 0.39062,
"H_per_IP": 0.90625,
"BB_per_IP": 0.17188,
"SO_per_IP": 1.07812,
"HR_per_IP": 0.14062
}
},
"season": {
"games": 13,
"totals": {
"IP": 81.2,
"ER": 29.0,
"R": 30.0,
"H": 63.0,
"BB": 25.0,
"SO": 94.0,
"HR": 11.0,
"BF": 324.0,
"Pitches": 1240.0
},
"per_game": {
"IP": 6.1,
"ER": 2.2308,
"R": 2.3077,
"H": 4.8462,
"BB": 1.9231,
"SO": 7.2308,
"HR": 0.8462,
"BF": 24.9231,
"Pitches": 95.3846
},
"rates": {
"ERA": 3.1959,
"WHIP": 1.0776,
"ER_per_IP": 0.3551,
"H_per_IP": 0.77143,
"BB_per_IP": 0.30612,
"SO_per_IP": 1.15102,
"HR_per_IP": 0.13469
}
}
},
"weighted_prediction": {
"predicted_IP": 6.1,
"predicted_ER": 2.503,
"predicted_H": 5.751,
"predicted_BB": 1.451,
"predicted_SO": 6.587,
"predicted_HR": 0.784,
"predicted_ERA": 3.5575,
"predicted_WHIP": 1.1371
}
}{
"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": 6.1,
"form": 6.1,
"final": 6.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.503,
"final": 1.8005,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 5.751,
"final": 3.9979,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 5.0,
"form": 1.451,
"final": 3.1097,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 6.587,
"final": 5.3779,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.784,
"final": 0.4176,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5575,
"final": 3.5575,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1371,
"final": 1.1371,
"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.3941 |
| ESPN Rank | 164 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1452 |
| Avg Velo | 92.3032 |
| Avg Spin | 1832.1074 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 2.8256 |
| Season WHIP | 1.0814 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"opponent": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"edges": {
"quality_edge": -0.1592,
"offense_edge": -0.0392,
"opponent_offense_edge": 0.0696,
"defense_strength": 0.0574,
"opponent_defense_weakness": -0.2396,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9926,
"run_prevention": 1.0134,
"strikeout": 0.9897
},
"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": 37.4,
"bb_percent": 4.3,
"woba": 0.266,
"xwoba": 0.247,
"sweet_spot_percent": 35.8,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 43.1,
"avg_best_speed": 82.1909,
"avg_hyper_speed": 94.8801,
"whiff_percent": 36.2,
"swing_percent": 50.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6604,
"command_and_miss": 1.6921,
"regression_edge": 0.5429,
"xwoba_edge": 1.9286,
"barrel_edge": -0.4667,
"hard_hit_edge": -0.6429,
"whiff_edge": 1.4857,
"bb_edge": 1.2,
"pitch_design_score": 0.1452
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "671922",
"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": 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": 14,
"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.1452,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.0372,
"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.3941,
"sample_weight": 0.45,
"run_prevention_factor": 0.9665,
"strikeout_factor": 1.064,
"walk_factor": 0.9568,
"homer_factor": 1.0023,
"woba_minus_xwoba": 0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671922",
"espn_id": 4987924,
"player_name": "Cade Smith",
"team": "CLE",
"role": "pitcher",
"espn_rank": 164,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 164,
"gp_value": 28.0,
"gp_rank": 39,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.8255,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 21.0,
"sv_rank": 1,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 28.2,
"ip_rank": 222,
"h_value": 26.0,
"h_rank": 214,
"er_value": 9.0,
"er_rank": 314,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 5.0,
"bb_rank": 443,
"k_value": 43.0,
"k_rank": 126,
"k_per_9_value": 13.5,
"k_per_9_rank": 15,
"whip_value": 1.0813,
"whip_rank": null,
"war_value": 0.57,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9849,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9849,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9806,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.001,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0288,
"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.1,
"ER": 2,
"H": 7,
"BB": 1,
"SO": 19,
"HR": 0,
"ERA": 1.7419354838709677,
"WHIP": 0.7741935483870968,
"K9": 16.548387096774192,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "671922",
"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": 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": 14,
"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.1452,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.0372,
"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.661,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.531,
"prior_weight": 0.469
},
"role": "pitcher",
"player_id": "671922",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 0.0,
"SO": 8.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 67.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.0,
"SO": 1.6,
"HR": 0.0,
"BF": 3.8,
"Pitches": 13.4
},
"rates": {
"ERA": 3.6,
"WHIP": 0.8,
"ER_per_IP": 0.4,
"H_per_IP": 0.8,
"BB_per_IP": 0.0,
"SO_per_IP": 1.6,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 2.0,
"R": 3.0,
"H": 7.0,
"BB": 1.0,
"SO": 19.0,
"HR": 0.0,
"BF": 39.0,
"Pitches": 152.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.7,
"BB": 0.1,
"SO": 1.9,
"HR": 0.0,
"BF": 3.9,
"Pitches": 15.2
},
"rates": {
"ERA": 1.7419,
"WHIP": 0.7742,
"ER_per_IP": 0.19355,
"H_per_IP": 0.67742,
"BB_per_IP": 0.09677,
"SO_per_IP": 1.83871,
"HR_per_IP": 0.0
}
},
"season": {
"games": 28,
"totals": {
"IP": 28.2,
"ER": 9.0,
"R": 11.0,
"H": 26.0,
"BB": 5.0,
"SO": 43.0,
"HR": 1.0,
"BF": 115.0,
"Pitches": 491.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3214,
"R": 0.3929,
"H": 0.9286,
"BB": 0.1786,
"SO": 1.5357,
"HR": 0.0357,
"BF": 4.1071,
"Pitches": 17.5357
},
"rates": {
"ERA": 2.8256,
"WHIP": 1.0814,
"ER_per_IP": 0.31395,
"H_per_IP": 0.90698,
"BB_per_IP": 0.17442,
"SO_per_IP": 1.5,
"HR_per_IP": 0.03488
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.392,
"predicted_H": 0.862,
"predicted_BB": 0.207,
"predicted_SO": 1.322,
"predicted_HR": 0.069,
"predicted_ERA": 3.5305,
"predicted_WHIP": 1.0699
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5482,
"form_weight": 0.4518,
"form_reliability": 0.531,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.661,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.531,
"prior_weight": 0.469
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.392,
"final": 0.7253,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.862,
"final": 0.9376,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.207,
"final": 0.6417,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.322,
"final": 1.1455,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.069,
"final": 0.0312,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5305,
"final": 3.5305,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0699,
"final": 1.0699,
"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.1465 |
| ESPN Rank | 271 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0373 |
| Avg Velo | 89.0446 |
| Avg Spin | 2243.6404 |
| 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 | 3.3061 |
| Season WHIP | 1.2245 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"opponent": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"edges": {
"quality_edge": -0.1592,
"offense_edge": -0.0392,
"opponent_offense_edge": 0.0696,
"defense_strength": 0.0574,
"opponent_defense_weakness": -0.2396,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9926,
"run_prevention": 1.0134,
"strikeout": 0.9897
},
"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": 18.9,
"bb_percent": 8.1,
"woba": 0.317,
"xwoba": 0.291,
"sweet_spot_percent": 25.9,
"barrel_batted_rate": 7.4,
"hard_hit_percent": 29.6,
"avg_best_speed": 78.0939,
"avg_hyper_speed": 92.6159,
"whiff_percent": 30.2,
"swing_percent": 49.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.4481,
"command_and_miss": 0.0129,
"regression_edge": 0.7429,
"xwoba_edge": 0.6714,
"barrel_edge": -0.0667,
"hard_hit_edge": 1.2857,
"whiff_edge": 0.6286,
"bb_edge": 0.25,
"pitch_design_score": -0.0373
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "683769",
"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": 89.04455364080364,
"release_spin_rate": 2243.640442977162,
"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": 89.04455364080364,
"release_spin_rate": 2243.640442977162,
"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.0446,
"release_spin_rate": 2243.6404,
"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.0373,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2663,
"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.1465,
"sample_weight": 0.45,
"run_prevention_factor": 0.9875,
"strikeout_factor": 1.001,
"walk_factor": 0.991,
"homer_factor": 0.9702,
"woba_minus_xwoba": 0.026,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683769",
"espn_id": 4187661,
"player_name": "Hunter Gaddis",
"team": "CLE",
"role": "pitcher",
"espn_rank": 271,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 271,
"gp_value": 19.0,
"gp_rank": 164,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.8571,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 9.0,
"hld_rank": 22,
"ip_value": 16.1,
"ip_rank": 400,
"h_value": 18.0,
"h_rank": 323,
"er_value": 7.0,
"er_rank": 383,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 6.0,
"bb_rank": 402,
"k_value": 14.0,
"k_rank": 395,
"k_per_9_value": 7.714286,
"k_per_9_rank": 26,
"whip_value": 1.4693,
"whip_rank": null,
"war_value": 0.19,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9944,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9944,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.996,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9866,
"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": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 1,
"H": 8,
"BB": 1,
"SO": 7,
"HR": 0,
"ERA": 0.9000000000000001,
"WHIP": 0.9000000000000001,
"K9": 6.300000000000001,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "683769",
"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": 89.04455364080364,
"release_spin_rate": 2243.640442977162,
"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": 89.04455364080364,
"release_spin_rate": 2243.640442977162,
"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.0446,
"release_spin_rate": 2243.6404,
"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.0373,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2663,
"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.225,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3921,
"prior_weight": 0.6079
},
"role": "pitcher",
"player_id": "683769",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 18,
"reference_playing_time": 1.0,
"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": 21.0,
"Pitches": 84.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": 4.2,
"Pitches": 16.8
},
"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": 10.0,
"ER": 1.0,
"R": 1.0,
"H": 8.0,
"BB": 1.0,
"SO": 7.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 149.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.8,
"BB": 0.1,
"SO": 0.7,
"HR": 0.0,
"BF": 4.0,
"Pitches": 14.9
},
"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": 0.7,
"HR_per_IP": 0.0
}
},
"season": {
"games": 18,
"totals": {
"IP": 16.1,
"ER": 6.0,
"R": 6.0,
"H": 16.0,
"BB": 4.0,
"SO": 14.0,
"HR": 2.0,
"BF": 70.0,
"Pitches": 263.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3333,
"R": 0.3333,
"H": 0.8889,
"BB": 0.2222,
"SO": 0.7778,
"HR": 0.1111,
"BF": 3.8889,
"Pitches": 14.6111
},
"rates": {
"ERA": 3.3061,
"WHIP": 1.2245,
"ER_per_IP": 0.36735,
"H_per_IP": 0.97959,
"BB_per_IP": 0.2449,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.12245
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.337,
"predicted_H": 0.901,
"predicted_BB": 0.254,
"predicted_SO": 0.93,
"predicted_HR": 0.094,
"predicted_ERA": 3.0353,
"predicted_WHIP": 1.1555
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6068,
"form_weight": 0.3932,
"form_reliability": 0.3921,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.225,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3921,
"prior_weight": 0.6079
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.337,
"final": 0.1325,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.901,
"final": 0.3542,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.254,
"final": 0.0999,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.93,
"final": 0.9725,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.094,
"final": 0.037,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.0353,
"final": 3.0353,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1555,
"final": 1.1555,
"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 | Shawn Armstrong |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0925 |
| ESPN Rank | 214 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0209 |
| Avg Velo | 90.0827 |
| Avg Spin | 2333.5185 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.5882 |
| Season WHIP | 1.0588 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"opponent": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"edges": {
"quality_edge": -0.1592,
"offense_edge": -0.0392,
"opponent_offense_edge": 0.0696,
"defense_strength": 0.0574,
"opponent_defense_weakness": -0.2396,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9926,
"run_prevention": 1.0134,
"strikeout": 0.9897
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "542888",
"profile": {
"available": true,
"pitcher_id": "542888",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 57.0,
"k_percent": 28.6,
"bb_percent": 11.4,
"woba": 0.294,
"xwoba": 0.297,
"sweet_spot_percent": 34.1,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 41.5,
"avg_best_speed": 78.198,
"avg_hyper_speed": 93.7668,
"whiff_percent": 28.7,
"swing_percent": 47.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1953,
"command_and_miss": 0.3964,
"regression_edge": -0.0857,
"xwoba_edge": 0.5,
"barrel_edge": -0.0444,
"hard_hit_edge": -0.4143,
"whiff_edge": 0.4143,
"bb_edge": -0.575,
"pitch_design_score": 0.0209
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "542888",
"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": 90.08271377170253,
"release_spin_rate": 2333.5185479930437,
"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": 90.08271377170253,
"release_spin_rate": 2333.5185479930437,
"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.0827,
"release_spin_rate": 2333.5185,
"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.0209,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.149,
"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.0925,
"sample_weight": 0.45,
"run_prevention_factor": 0.9921,
"strikeout_factor": 1.0221,
"walk_factor": 1.0207,
"homer_factor": 1.0023,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "542888",
"espn_id": 33499,
"player_name": "Shawn Armstrong",
"team": "CLE",
"role": "pitcher",
"espn_rank": 214,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 214,
"gp_value": 19.0,
"gp_rank": 164,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.1764,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 17.0,
"ip_rank": 387,
"h_value": 12.0,
"h_rank": 423,
"er_value": 6.0,
"er_rank": 425,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 8.0,
"bb_rank": 324,
"k_value": 20.0,
"k_rank": 323,
"k_per_9_value": 10.588236,
"k_per_9_rank": 22,
"whip_value": 1.1764,
"whip_rank": null,
"war_value": 0.36,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9964,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9964,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0093,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.001,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0099,
"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": 1,
"H": 4,
"BB": 1,
"SO": 8,
"HR": 0,
"ERA": 1.08,
"WHIP": 0.6000000000000001,
"K9": 8.64,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "542888",
"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": 90.08271377170253,
"release_spin_rate": 2333.5185479930437,
"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": 90.08271377170253,
"release_spin_rate": 2333.5185479930437,
"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.0827,
"release_spin_rate": 2333.5185,
"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.0209,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.149,
"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.357,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4017,
"prior_weight": 0.5983
},
"role": "pitcher",
"player_id": "542888",
"report_date": "20260608_N",
"season_year": 2026,
"rows_used": 18,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 0.0,
"SO": 4.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 69.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.0,
"SO": 0.8,
"HR": 0.0,
"BF": 3.4,
"Pitches": 13.8
},
"rates": {
"ERA": 1.9286,
"WHIP": 0.6429,
"ER_per_IP": 0.21429,
"H_per_IP": 0.64286,
"BB_per_IP": 0.0,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 1.0,
"SO": 9.0,
"HR": 0.0,
"BF": 33.0,
"Pitches": 135.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.1,
"SO": 0.9,
"HR": 0.0,
"BF": 3.3,
"Pitches": 13.5
},
"rates": {
"ERA": 0.9643,
"WHIP": 0.6429,
"ER_per_IP": 0.10714,
"H_per_IP": 0.53571,
"BB_per_IP": 0.10714,
"SO_per_IP": 0.96429,
"HR_per_IP": 0.0
}
},
"season": {
"games": 18,
"totals": {
"IP": 17.0,
"ER": 3.0,
"R": 3.0,
"H": 12.0,
"BB": 6.0,
"SO": 20.0,
"HR": 2.0,
"BF": 67.0,
"Pitches": 290.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1667,
"R": 0.1667,
"H": 0.6667,
"BB": 0.3333,
"SO": 1.1111,
"HR": 0.1111,
"BF": 3.7222,
"Pitches": 16.1111
},
"rates": {
"ERA": 1.5882,
"WHIP": 1.0588,
"ER_per_IP": 0.17647,
"H_per_IP": 0.70588,
"BB_per_IP": 0.35294,
"SO_per_IP": 1.17647,
"HR_per_IP": 0.11765
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.287,
"predicted_H": 0.657,
"predicted_BB": 0.209,
"predicted_SO": 0.756,
"predicted_HR": 0.074,
"predicted_ERA": 3.2224,
"predicted_WHIP": 1.0826
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6028,
"form_weight": 0.3972,
"form_reliability": 0.4017,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.357,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4017,
"prior_weight": 0.5983
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.287,
"final": 0.114,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.657,
"final": 0.8638,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.209,
"final": 0.083,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.756,
"final": 0.3003,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.074,
"final": 0.0294,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2224,
"final": 3.2224,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0826,
"final": 1.0826,
"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 | Colin Holderman |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2325 |
| ESPN Rank | 138 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1289 |
| Avg Velo | 92.0120 |
| Avg Spin | 2395.2507 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.9565 |
| Season WHIP | 0.7826 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 74,
"wins": 41,
"losses": 33,
"win_pct": 0.5541,
"runs_scored": 318.0,
"runs_allowed": 313.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0676,
"avg_runs_scored": 4.2973,
"avg_runs_allowed": 4.2297,
"offense_index": 0.9608,
"defense_index": 1.0574,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.5,
"avg_runs_allowed": 4.6,
"run_differential": -11.0
},
"available": true,
"quality_score": 0.0543
},
"opponent": {
"team": "NYY",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 354.0,
"runs_allowed": 267.0,
"run_differential": 87.0,
"run_differential_per_game": 1.1757,
"avg_runs_scored": 4.7838,
"avg_runs_allowed": 3.6081,
"offense_index": 1.0696,
"defense_index": 1.2396,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 3.7,
"run_differential": 14.0
},
"available": true,
"quality_score": 0.2135
},
"edges": {
"quality_edge": -0.1592,
"offense_edge": -0.0392,
"opponent_offense_edge": 0.0696,
"defense_strength": 0.0574,
"opponent_defense_weakness": -0.2396,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9926,
"run_prevention": 1.0134,
"strikeout": 0.9897
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "670059",
"profile": {
"available": true,
"pitcher_id": "670059",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 71.0,
"k_percent": 31.0,
"bb_percent": 6.9,
"woba": 0.185,
"xwoba": 0.261,
"sweet_spot_percent": 27.8,
"barrel_batted_rate": 11.1,
"hard_hit_percent": 46.3,
"avg_best_speed": 74.2076,
"avg_hyper_speed": 94.4358,
"whiff_percent": 26.6,
"swing_percent": 44.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.95,
"command_and_miss": 0.6707,
"regression_edge": -2.0,
"xwoba_edge": 1.5286,
"barrel_edge": -0.8889,
"hard_hit_edge": -1.1,
"whiff_edge": 0.1143,
"bb_edge": 0.55,
"pitch_design_score": 0.1289
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "670059",
"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": 92.01196637996522,
"release_spin_rate": 2395.2507372853447,
"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": 92.01196637996522,
"release_spin_rate": 2395.2507372853447,
"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.012,
"release_spin_rate": 2395.2507,
"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.1289,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9207,
"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.2325,
"sample_weight": 0.45,
"run_prevention_factor": 0.9802,
"strikeout_factor": 1.0229,
"walk_factor": 0.9802,
"homer_factor": 1.0312,
"woba_minus_xwoba": -0.076,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "670059",
"espn_id": 4917897,
"player_name": "Colin Holderman",
"team": "CLE",
"role": "pitcher",
"espn_rank": 138,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 138,
"gp_value": 19.0,
"gp_rank": 164,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.9565,
"era_rank": null,
"w_value": 4.0,
"w_rank": 52,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 4.0,
"hld_rank": 104,
"ip_value": 23.0,
"ip_rank": 313,
"h_value": 12.0,
"h_rank": 423,
"er_value": 5.0,
"er_rank": 459,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 6.0,
"bb_rank": 402,
"k_value": 27.0,
"k_rank": 242,
"k_per_9_value": 10.565217,
"k_per_9_rank": 20,
"whip_value": 0.7826,
"whip_rank": null,
"war_value": 0.66,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9911,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9911,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9911,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.014,
"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": 9.1,
"ER": 3,
"H": 6,
"BB": 3,
"SO": 13,
"HR": 0,
"ERA": 2.8928571428571432,
"WHIP": 0.9642857142857144,
"K9": 12.535714285714286,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "670059",
"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": 92.01196637996522,
"release_spin_rate": 2395.2507372853447,
"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": 92.01196637996522,
"release_spin_rate": 2395.2507372853447,
"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.012,
"release_spin_rate": 2395.2507,
"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.1289,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9207,
"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.542,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.476,
"prior_weight": 0.524
},
"role": "pitcher",
"player_id": "670059",
"report_date": "20260608_N",
"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": 3.0,
"BB": 1.0,
"SO": 6.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 79.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.6,
"BB": 0.2,
"SO": 1.2,
"HR": 0.0,
"BF": 3.4,
"Pitches": 15.8
},
"rates": {
"ERA": 3.8571,
"WHIP": 0.8571,
"ER_per_IP": 0.42857,
"H_per_IP": 0.64286,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 3.0,
"R": 3.0,
"H": 6.0,
"BB": 3.0,
"SO": 13.0,
"HR": 0.0,
"BF": 36.0,
"Pitches": 158.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.6,
"BB": 0.3,
"SO": 1.3,
"HR": 0.0,
"BF": 3.6,
"Pitches": 15.8
},
"rates": {
"ERA": 2.8929,
"WHIP": 0.9643,
"ER_per_IP": 0.32143,
"H_per_IP": 0.64286,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.39286,
"HR_per_IP": 0.0
}
},
"season": {
"games": 19,
"totals": {
"IP": 23.0,
"ER": 5.0,
"R": 6.0,
"H": 12.0,
"BB": 6.0,
"SO": 27.0,
"HR": 1.0,
"BF": 87.0,
"Pitches": 352.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2632,
"R": 0.3158,
"H": 0.6316,
"BB": 0.3158,
"SO": 1.4211,
"HR": 0.0526,
"BF": 4.5789,
"Pitches": 18.5263
},
"rates": {
"ERA": 1.9565,
"WHIP": 0.7826,
"ER_per_IP": 0.21739,
"H_per_IP": 0.52174,
"BB_per_IP": 0.26087,
"SO_per_IP": 1.17391,
"HR_per_IP": 0.04348
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.287,
"predicted_H": 0.543,
"predicted_BB": 0.215,
"predicted_SO": 0.757,
"predicted_HR": 0.053,
"predicted_ERA": 3.7808,
"predicted_WHIP": 1.1115
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5714,
"form_weight": 0.4286,
"form_reliability": 0.476,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.542,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.476,
"prior_weight": 0.524
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.287,
"final": 0.123,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.543,
"final": 1.3755,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.215,
"final": 0.0922,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.757,
"final": 0.8958,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.053,
"final": 0.0227,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7808,
"final": 3.7808,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1115,
"final": 1.1115,
"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.231 | 0.000 | 0.000 | Hitting_2B | 0.231 | 0.000 | -0.231 | 0.000 |
| predicted_3B | 0.008 | 0.000 | 0.000 | Hitting_3B | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_AB | 4.260 | 5.000 | 6.000 | Hitting_AB | 3.661 | 3.000 | 1.339 | 2.000 |
| predicted_AVG | 0.230 | 0.200 | 0.167 | Hitting_AVG | 0.291 | 0.000 | -0.091 | 0.200 |
| predicted_BB | 0.579 | 0.000 | 1.000 | Hitting_BB | 0.579 | 1.000 | -0.579 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.066 | 0.000 | -0.066 | 0.000 |
| predicted_H | 0.980 | 1.000 | 1.000 | Hitting_H | 1.066 | 0.000 | -0.066 | 1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.107 | 0.000 | -0.107 | 0.000 |
| predicted_OBP | 0.303 | 0.200 | 0.286 | Hitting_OBP | 0.399 | 0.250 | -0.199 | -0.050 |
| predicted_R | 0.463 | 0.000 | 1.000 | Hitting_R | 0.463 | 0.000 | -0.463 | 0.000 |
| predicted_RBI | 0.500 | 0.000 | 1.000 | Hitting_RBI | 0.446 | 0.000 | -0.446 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_SLG | 0.415 | 0.200 | 0.167 | Hitting_SLG | 0.447 | 0.000 | -0.247 | 0.200 |
| predicted_SO | 0.752 | 2.000 | 1.000 | Hitting_SO | 0.752 | 0.000 | 1.248 | 2.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.7520 -> 2.0000 (boost 1.2480, worse) |
| Biggest Deboost | predicted_BB: 0.5790 -> 0.0000 (deboost -0.5790, 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 | 12 | 12 | 0 | 11 | 1 | predicted_AB: 4.2600 -> 6.1985 (boost 1.9385, 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.4255 -> 0.4053 (deboost -0.0202, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 2 | 7 | 3 | 6 | predicted_RBI: 0.7125 -> 1.0000 (boost 0.2875, better) | predicted_H: 1.4525 -> 1.0000 (deboost -0.4525, worse) | AB rounded to 6 (raw=6.20), rates preserved: AVG=0.234 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6174 -> 1.0000 (boost 0.3826, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4053 -> 0.1670 (deboost -0.2383, 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 -> 2.0000 (boost 1.0000, worse) | predicted_AB: 6.0000 -> 5.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.1670 -> 0.4053 (boost 0.2383, better) | - | 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.231,
"predicted_3B": 0.008,
"predicted_AB": 4.26,
"predicted_AVG": 0.23,
"predicted_BB": 0.579,
"predicted_H": 0.98,
"predicted_HR": 0.13,
"predicted_OBP": 0.303,
"predicted_R": 0.463,
"predicted_RBI": 0.5,
"predicted_SLG": 0.415,
"predicted_SO": 0.752
},
"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.3638,
"predicted_3B": 0.0636,
"predicted_AB": 6.1985,
"predicted_AVG": 0.2381,
"predicted_BB": 0.7366,
"predicted_H": 1.4966,
"predicted_HBP": 0.116,
"predicted_HR": 0.1969,
"predicted_OBP": 0.3119,
"predicted_R": 0.6484,
"predicted_RBI": 0.7483,
"predicted_SLG": 0.4255,
"predicted_SO": 1.1948
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.231,
"after": 0.3638,
"delta": 0.1328,
"percent_delta": 0.5749,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.008,
"after": 0.0636,
"delta": 0.0556,
"percent_delta": 6.95,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.26,
"after": 6.1985,
"delta": 1.9385,
"percent_delta": 0.455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2381,
"delta": 0.0081,
"percent_delta": 0.0352,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.579,
"after": 0.7366,
"delta": 0.1576,
"percent_delta": 0.2722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.4966,
"delta": 0.5166,
"percent_delta": 0.5271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1969,
"delta": 0.0669,
"percent_delta": 0.5146,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.3119,
"delta": 0.0089,
"percent_delta": 0.0294,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.463,
"after": 0.6484,
"delta": 0.1854,
"percent_delta": 0.4004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.7483,
"delta": 0.2483,
"percent_delta": 0.4966,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.415,
"after": 0.4255,
"delta": 0.0105,
"percent_delta": 0.0253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.752,
"after": 1.1948,
"delta": 0.4428,
"percent_delta": 0.5888,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 12,
"deboosted_metrics": 0,
"better_metrics": 11,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.26,
"after": 6.1985,
"delta": 1.9385,
"percent_delta": 0.455,
"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.3638,
"predicted_3B": 0.0636,
"predicted_AB": 6.1985,
"predicted_AVG": 0.2343,
"predicted_BB": 0.732,
"predicted_H": 1.4525,
"predicted_HBP": 0.116,
"predicted_HR": 0.1897,
"predicted_OBP": 0.3152,
"predicted_R": 0.6174,
"predicted_RBI": 0.7125,
"predicted_SLG": 0.4053,
"predicted_SO": 1.2023
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3638,
"after": 0.3638,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0636,
"after": 0.0636,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.1985,
"after": 6.1985,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2381,
"after": 0.2343,
"delta": -0.0038,
"percent_delta": -0.016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7366,
"after": 0.732,
"delta": -0.0046,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4966,
"after": 1.4525,
"delta": -0.0441,
"percent_delta": -0.0295,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.116,
"after": 0.116,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1969,
"after": 0.1897,
"delta": -0.0072,
"percent_delta": -0.0366,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3119,
"after": 0.3152,
"delta": 0.0033,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6484,
"after": 0.6174,
"delta": -0.031,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7483,
"after": 0.7125,
"delta": -0.0358,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4255,
"after": 0.4053,
"delta": -0.0202,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1948,
"after": 1.2023,
"delta": 0.0075,
"percent_delta": 0.0063,
"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.4255,
"after": 0.4053,
"delta": -0.0202,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.20), rates preserved: AVG=0.234 HR/AB=0.031",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.3638,
"after": 0.0,
"delta": -0.3638,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0636,
"after": 0.0,
"delta": -0.0636,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.1985,
"after": 6.0,
"delta": -0.1985,
"percent_delta": -0.032,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.732,
"after": 1.0,
"delta": 0.268,
"percent_delta": 0.3661,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4525,
"after": 1.0,
"delta": -0.4525,
"percent_delta": -0.3115,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.116,
"after": 0.0,
"delta": -0.116,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1897,
"after": 0.0,
"delta": -0.1897,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7125,
"after": 1.0,
"delta": 0.2875,
"percent_delta": 0.4035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2023,
"after": 1.0,
"delta": -0.2023,
"percent_delta": -0.1683,
"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_RBI",
"before": 0.7125,
"after": 1.0,
"delta": 0.2875,
"percent_delta": 0.4035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.4525,
"after": 1.0,
"delta": -0.4525,
"percent_delta": -0.3115,
"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": 6.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": 6.0,
"after": 6.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.6174,
"after": 1.0,
"delta": 0.3826,
"percent_delta": 0.6197,
"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.6174,
"after": 1.0,
"delta": 0.3826,
"percent_delta": 0.6197,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2343,
"after": 0.167,
"delta": -0.0673,
"percent_delta": -0.2872,
"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.3152,
"after": 0.286,
"delta": -0.0292,
"percent_delta": -0.0926,
"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.4053,
"after": 0.167,
"delta": -0.2383,
"percent_delta": -0.588,
"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.4053,
"after": 0.167,
"delta": -0.2383,
"percent_delta": -0.588,
"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": 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": 6.0,
"after": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 5,
"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_AB",
"before": 6.0,
"after": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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.2343,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3152,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4053,
"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.167,
"after": 0.2343,
"delta": 0.0673,
"percent_delta": 0.4031,
"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.286,
"after": 0.3152,
"delta": 0.0292,
"percent_delta": 0.1021,
"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.167,
"after": 0.4053,
"delta": 0.2383,
"percent_delta": 1.4272,
"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.167,
"after": 0.4053,
"delta": 0.2383,
"percent_delta": 1.4272,
"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": 0.0,
"delta": -0.231,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.008,
"after": 0.0,
"delta": -0.008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.26,
"after": 5.0,
"delta": 0.74,
"percent_delta": 0.1737,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2343,
"delta": 0.0043,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.579,
"after": 0.0,
"delta": -0.579,
"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.303,
"after": 0.3152,
"delta": 0.0122,
"percent_delta": 0.0403,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.463,
"after": 0.0,
"delta": -0.463,
"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.415,
"after": 0.4053,
"delta": -0.0097,
"percent_delta": -0.0234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.752,
"after": 2.0,
"delta": 1.248,
"percent_delta": 1.6596,
"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.752,
"after": 2.0,
"delta": 1.248,
"percent_delta": 1.6596,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.579,
"after": 0.0,
"delta": -0.579,
"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.008 | - |
| predicted_AB | 4.260 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.579 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.303 | - |
| predicted_R | 0.463 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.415 | - |
| predicted_SO | 0.752 | - |
Final model 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.364 | 0.133 |
| predicted_3B | 0.064 | 0.056 |
| predicted_AB | 6.199 | 1.939 |
| predicted_AVG | 0.238 | 0.008 |
| predicted_BB | 0.737 | 0.158 |
| predicted_H | 1.497 | 0.517 |
| predicted_HBP | 0.116 | - |
| predicted_HR | 0.197 | 0.067 |
| predicted_OBP | 0.312 | 0.009 |
| predicted_R | 0.648 | 0.185 |
| predicted_RBI | 0.748 | 0.248 |
| predicted_SLG | 0.425 | 0.011 |
| predicted_SO | 1.195 | 0.443 |
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.364 | 0.000 |
| predicted_3B | 0.064 | 0.000 |
| predicted_AB | 6.199 | 0.000 |
| predicted_AVG | 0.234 | -0.004 |
| predicted_BB | 0.732 | -0.005 |
| predicted_H | 1.452 | -0.044 |
| predicted_HBP | 0.116 | 0.000 |
| predicted_HR | 0.190 | -0.007 |
| predicted_OBP | 0.315 | 0.003 |
| predicted_R | 0.617 | -0.031 |
| predicted_RBI | 0.713 | -0.036 |
| predicted_SLG | 0.405 | -0.020 |
| predicted_SO | 1.202 | 0.007 |
AB rounded to 6 (raw=6.20), rates preserved: AVG=0.234 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.364 |
| predicted_3B | 0.000 | -0.064 |
| predicted_AB | 6.000 | -0.199 |
| predicted_AVG | 0.167 | -0.067 |
| predicted_BB | 1.000 | 0.268 |
| predicted_H | 1.000 | -0.452 |
| predicted_HR | 0.000 | -0.190 |
| predicted_OBP | 0.286 | -0.029 |
| predicted_R | 1.000 | 0.383 |
| predicted_RBI | 1.000 | 0.287 |
| predicted_SLG | 0.167 | -0.238 |
| predicted_SO | 1.000 | -0.202 |
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 | 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 | 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 | 3.000 | 0.000 | 1.000 | 1.000 | 2.000 | 1.000 | 1.000 | 3.000 | 0.1500 | 0.1905 | 0.4000 | 0.1500 | 0.0500 | 0.1000 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 10 | - | 41.000 | 9.000 | 5.000 | 1.000 | 1.000 | 6.000 | 3.000 | 1.000 | 10.000 | 0.2195 | 0.2326 | 0.4634 | 0.2195 | 0.0244 | 0.1463 | 0.0244 | 0.2439 |
| season | 0.60 | 36 | - | 443.000 | 129.000 | 28.000 | 1.000 | 13.000 | 54.000 | 56.000 | 70.000 | 91.000 | 0.2912 | 0.3989 | 0.4470 | 0.2912 | 0.0294 | 0.1219 | 0.1580 | 0.2054 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5370 |
| predicted_3B | 0.1360 |
| predicted_AB | 8.7250 |
| predicted_AVG | 0.2487 |
| predicted_BB | 0.9420 |
| predicted_H | 2.1700 |
| predicted_HBP | 0.1160 |
| predicted_HR | 0.2840 |
| predicted_OBP | 0.3234 |
| predicted_R | 0.8900 |
| predicted_RBI | 1.0720 |
| predicted_SLG | 0.4391 |
| predicted_SO | 1.7720 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2310 | 0.5370 | 0.3638 | model_form_blend |
| predicted_3B | 0.0080 | 0.1360 | 0.0636 | model_form_blend |
| predicted_AB | 4.2600 | 8.7250 | 6.1985 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2487 | 0.2381 | model_form_blend |
| predicted_BB | 0.5790 | 0.9420 | 0.7366 | model_form_blend |
| predicted_H | 0.9800 | 2.1700 | 1.4966 | model_form_blend |
| predicted_HBP | - | 0.1160 | 0.1160 | form_only |
| predicted_HR | 0.1300 | 0.2840 | 0.1969 | model_form_blend |
| predicted_OBP | 0.3030 | 0.3234 | 0.3119 | model_form_blend |
| predicted_R | 0.4630 | 0.8900 | 0.6484 | model_form_blend |
| predicted_RBI | 0.5000 | 1.0720 | 0.7483 | model_form_blend |
| predicted_SLG | 0.4150 | 0.4391 | 0.4255 | model_form_blend |
| predicted_SO | 0.7520 | 1.7720 | 1.1948 | 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 | 121 |
| Season rows before report date | 121 |
| Report year | 2026 |
| Profile rows used | 121 |
| 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 | 2 |
| 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 | 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 | 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 | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 683953 |
| playerID | 683953 |
| playerName | Travis Bazzana |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.4 |
| sl_bb_percent | 10.5 |
| sl_woba | 0.351 |
| sl_xwoba | 0.323 |
| sl_xba | 0.26 |
| sl_xslg | 0.382 |
| sl_sweet_spot_percent | 32.1 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 36.5 |
| sl_exit_velocity_avg | 88.9 |
| sl_launch_angle_avg | 11.8 |
| sl_whiff_percent | 24.9 |
| 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.224 | 0.000 | 0.000 | Hitting_2B | 0.223 | 0.000 | -0.223 | 0.000 |
| predicted_3B | 0.022 | 0.000 | 0.000 | Hitting_3B | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_AB | 4.090 | 4.000 | 7.000 | Hitting_AB | 3.862 | 4.000 | 0.138 | 0.000 |
| predicted_AVG | 0.236 | 0.250 | 0.286 | Hitting_AVG | 0.255 | 0.250 | -0.005 | 0.000 |
| predicted_BB | 0.462 | 0.000 | 1.000 | Hitting_BB | 0.464 | 0.000 | -0.464 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 0.960 | 1.000 | 2.000 | Hitting_H | 0.987 | 1.000 | 0.013 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_OBP | 0.295 | 0.250 | 0.375 | Hitting_OBP | 0.331 | 0.250 | -0.081 | 0.000 |
| predicted_R | 0.462 | 0.000 | 1.000 | Hitting_R | 0.460 | 0.000 | -0.460 | 0.000 |
| predicted_RBI | 0.460 | 0.000 | 1.000 | Hitting_RBI | 0.665 | 0.000 | -0.665 | 0.000 |
| predicted_SLG | 0.363 | 0.250 | 0.286 | Hitting_SLG | 0.436 | 0.250 | -0.186 | 0.000 |
| predicted_SO | 0.516 | 0.000 | 1.000 | Hitting_SO | 0.513 | 1.000 | -0.513 | -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.5160 -> 0.0000 (deboost -0.5160, 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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 4.0900 -> 6.6818 (boost 2.5918, better) | predicted_SLG: 0.3630 -> 0.3564 (deboost -0.0066, 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.3564 -> 0.3473 (deboost -0.0091, 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 | 5 | 2 | predicted_H: 1.5373 -> 2.0000 (boost 0.4627, better) | predicted_2B: 0.2796 -> 0.0000 (deboost -0.2796, worse) | AB rounded to 7 (raw=6.68), rates preserved: AVG=0.230 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6597 -> 1.0000 (boost 0.3403, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2926 -> 0.3750 (boost 0.0824, better) | predicted_SLG: 0.3473 -> 0.2860 (deboost -0.0613, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3473 (boost 0.0613, better) | predicted_OBP: 0.3750 -> 0.2926 (deboost -0.0824, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "800050",
"player_name": "Chase DeLauter",
"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.224,
"predicted_3B": 0.022,
"predicted_AB": 4.09,
"predicted_AVG": 0.236,
"predicted_BB": 0.462,
"predicted_H": 0.96,
"predicted_HR": 0.1,
"predicted_OBP": 0.295,
"predicted_R": 0.462,
"predicted_RBI": 0.46,
"predicted_SLG": 0.363,
"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.2796,
"predicted_3B": 0.0277,
"predicted_AB": 6.6818,
"predicted_AVG": 0.237,
"predicted_BB": 0.5948,
"predicted_H": 1.584,
"predicted_HBP": 0.003,
"predicted_HR": 0.1552,
"predicted_OBP": 0.2917,
"predicted_R": 0.6928,
"predicted_RBI": 0.8281,
"predicted_SLG": 0.3564,
"predicted_SO": 1.1864
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.224,
"after": 0.2796,
"delta": 0.0556,
"percent_delta": 0.2482,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.0277,
"delta": 0.0057,
"percent_delta": 0.2591,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.09,
"after": 6.6818,
"delta": 2.5918,
"percent_delta": 0.6337,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.237,
"delta": 0.001,
"percent_delta": 0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 0.5948,
"delta": 0.1328,
"percent_delta": 0.2874,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.584,
"delta": 0.624,
"percent_delta": 0.65,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1552,
"delta": 0.0552,
"percent_delta": 0.552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.2917,
"delta": -0.0033,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 0.6928,
"delta": 0.2308,
"percent_delta": 0.4996,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.8281,
"delta": 0.3681,
"percent_delta": 0.8002,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.363,
"after": 0.3564,
"delta": -0.0066,
"percent_delta": -0.0182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.516,
"after": 1.1864,
"delta": 0.6704,
"percent_delta": 1.2992,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 8,
"deboosted_metrics": 1,
"better_metrics": 7,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.09,
"after": 6.6818,
"delta": 2.5918,
"percent_delta": 0.6337,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.363,
"after": 0.3564,
"delta": -0.0066,
"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": 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.2796,
"predicted_3B": 0.0277,
"predicted_AB": 6.6818,
"predicted_AVG": 0.2301,
"predicted_BB": 0.5911,
"predicted_H": 1.5373,
"predicted_HBP": 0.003,
"predicted_HR": 0.1495,
"predicted_OBP": 0.2926,
"predicted_R": 0.6597,
"predicted_RBI": 0.7885,
"predicted_SLG": 0.3473,
"predicted_SO": 1.1939
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2796,
"after": 0.2796,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0277,
"after": 0.0277,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6818,
"after": 6.6818,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2301,
"delta": -0.0069,
"percent_delta": -0.0291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5948,
"after": 0.5911,
"delta": -0.0037,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.584,
"after": 1.5373,
"delta": -0.0467,
"percent_delta": -0.0295,
"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.1552,
"after": 0.1495,
"delta": -0.0057,
"percent_delta": -0.0367,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2917,
"after": 0.2926,
"delta": 0.0009,
"percent_delta": 0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6928,
"after": 0.6597,
"delta": -0.0331,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8281,
"after": 0.7885,
"delta": -0.0396,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3564,
"after": 0.3473,
"delta": -0.0091,
"percent_delta": -0.0255,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1864,
"after": 1.1939,
"delta": 0.0075,
"percent_delta": 0.0063,
"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.3564,
"after": 0.3473,
"delta": -0.0091,
"percent_delta": -0.0255,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.68), rates preserved: AVG=0.230 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.2796,
"after": 0.0,
"delta": -0.2796,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0277,
"after": 0.0,
"delta": -0.0277,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6818,
"after": 7.0,
"delta": 0.3182,
"percent_delta": 0.0476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5911,
"after": 1.0,
"delta": 0.4089,
"percent_delta": 0.6918,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5373,
"after": 2.0,
"delta": 0.4627,
"percent_delta": 0.301,
"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.1495,
"after": 0.0,
"delta": -0.1495,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7885,
"after": 1.0,
"delta": 0.2115,
"percent_delta": 0.2682,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1939,
"after": 1.0,
"delta": -0.1939,
"percent_delta": -0.1624,
"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_H",
"before": 1.5373,
"after": 2.0,
"delta": 0.4627,
"percent_delta": 0.301,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2796,
"after": 0.0,
"delta": -0.2796,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 0.6597,
"after": 1.0,
"delta": 0.3403,
"percent_delta": 0.5158,
"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.6597,
"after": 1.0,
"delta": 0.3403,
"percent_delta": 0.5158,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2301,
"after": 0.286,
"delta": 0.0559,
"percent_delta": 0.2429,
"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": 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_OBP",
"before": 0.2926,
"after": 0.375,
"delta": 0.0824,
"percent_delta": 0.2816,
"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.3473,
"after": 0.286,
"delta": -0.0613,
"percent_delta": -0.1765,
"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.2926,
"after": 0.375,
"delta": 0.0824,
"percent_delta": 0.2816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3473,
"after": 0.286,
"delta": -0.0613,
"percent_delta": -0.1765,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 0,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2301,
"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.2926,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3473,
"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.286,
"after": 0.2301,
"delta": -0.0559,
"percent_delta": -0.1956,
"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.375,
"after": 0.2926,
"delta": -0.0824,
"percent_delta": -0.2196,
"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.286,
"after": 0.3473,
"delta": 0.0613,
"percent_delta": 0.2145,
"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.286,
"after": 0.3473,
"delta": 0.0613,
"percent_delta": 0.2145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.2926,
"delta": -0.0824,
"percent_delta": -0.2196,
"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.224,
"after": 0.0,
"delta": -0.224,
"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": 4.09,
"after": 4.0,
"delta": -0.09,
"percent_delta": -0.022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2301,
"delta": -0.0059,
"percent_delta": -0.025,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 0.0,
"delta": -0.462,
"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.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.2926,
"delta": -0.0024,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 0.0,
"delta": -0.462,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.0,
"delta": -0.46,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.363,
"after": 0.3473,
"delta": -0.0157,
"percent_delta": -0.0433,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.516,
"after": 0.0,
"delta": -0.516,
"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.516,
"after": 0.0,
"delta": -0.516,
"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.224 | - |
| predicted_3B | 0.022 | - |
| predicted_AB | 4.090 | - |
| predicted_AVG | 0.236 | - |
| predicted_BB | 0.462 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.295 | - |
| predicted_R | 0.462 | - |
| predicted_RBI | 0.460 | - |
| predicted_SLG | 0.363 | - |
| 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.280 | 0.056 |
| predicted_3B | 0.028 | 0.006 |
| predicted_AB | 6.682 | 2.592 |
| predicted_AVG | 0.237 | 0.001 |
| predicted_BB | 0.595 | 0.133 |
| predicted_H | 1.584 | 0.624 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.155 | 0.055 |
| predicted_OBP | 0.292 | -0.003 |
| predicted_R | 0.693 | 0.231 |
| predicted_RBI | 0.828 | 0.368 |
| predicted_SLG | 0.356 | -0.007 |
| predicted_SO | 1.186 | 0.670 |
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.280 | 0.000 |
| predicted_3B | 0.028 | 0.000 |
| predicted_AB | 6.682 | 0.000 |
| predicted_AVG | 0.230 | -0.007 |
| predicted_BB | 0.591 | -0.004 |
| predicted_H | 1.537 | -0.047 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.149 | -0.006 |
| predicted_OBP | 0.293 | 0.001 |
| predicted_R | 0.660 | -0.033 |
| predicted_RBI | 0.788 | -0.040 |
| predicted_SLG | 0.347 | -0.009 |
| predicted_SO | 1.194 | 0.008 |
AB rounded to 7 (raw=6.68), rates preserved: AVG=0.230 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.280 |
| predicted_3B | 0.000 | -0.028 |
| predicted_AB | 7.000 | 0.318 |
| predicted_AVG | 0.286 | 0.056 |
| predicted_BB | 1.000 | 0.409 |
| predicted_H | 2.000 | 0.463 |
| predicted_HR | 0.000 | -0.149 |
| predicted_OBP | 0.375 | 0.082 |
| predicted_R | 1.000 | 0.340 |
| predicted_RBI | 1.000 | 0.212 |
| predicted_SLG | 0.286 | -0.061 |
| predicted_SO | 1.000 | -0.194 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | - | 18.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 7.000 | 0.1667 | 0.1667 | 0.1667 | 0.1667 | 0.0000 | 0.0556 | 0.0000 | 0.3889 |
| last_10 | 0.20 | 10 | - | 39.000 | 10.000 | 0.000 | 0.000 | 0.000 | 3.000 | 3.000 | 1.000 | 9.000 | 0.2564 | 0.2750 | 0.2564 | 0.2564 | 0.0000 | 0.0769 | 0.0256 | 0.2308 |
| season | 0.60 | 60 | - | 865.000 | 221.000 | 50.000 | 5.000 | 32.000 | 149.000 | 103.000 | 103.000 | 115.000 | 0.2555 | 0.3306 | 0.4358 | 0.2555 | 0.0370 | 0.1722 | 0.1191 | 0.1330 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3500 |
| predicted_3B | 0.0350 |
| predicted_AB | 9.9630 |
| predicted_AVG | 0.2383 |
| predicted_BB | 0.7630 |
| predicted_H | 2.3740 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.2250 |
| predicted_OBP | 0.2875 |
| predicted_R | 0.9850 |
| predicted_RBI | 1.2940 |
| predicted_SLG | 0.3480 |
| predicted_SO | 2.0350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2240 | 0.3500 | 0.2796 | model_form_blend |
| predicted_3B | 0.0220 | 0.0350 | 0.0277 | model_form_blend |
| predicted_AB | 4.0900 | 9.9630 | 6.6818 | model_form_blend |
| predicted_AVG | 0.2360 | 0.2383 | 0.2370 | model_form_blend |
| predicted_BB | 0.4620 | 0.7630 | 0.5948 | model_form_blend |
| predicted_H | 0.9600 | 2.3740 | 1.5840 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1000 | 0.2250 | 0.1552 | model_form_blend |
| predicted_OBP | 0.2950 | 0.2875 | 0.2917 | model_form_blend |
| predicted_R | 0.4620 | 0.9850 | 0.6928 | model_form_blend |
| predicted_RBI | 0.4600 | 1.2940 | 0.8281 | model_form_blend |
| predicted_SLG | 0.3630 | 0.3480 | 0.3564 | model_form_blend |
| predicted_SO | 0.5160 | 2.0350 | 1.1864 | 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 | 223 |
| 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.255 |
| 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 | 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 | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 800050 |
| playerID | 800050 |
| playerName | Chase DeLauter |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 12.9 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.327 |
| sl_xwoba | 0.341 |
| sl_xba | 0.277 |
| sl_xslg | 0.411 |
| sl_sweet_spot_percent | 36.2 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 40.5 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 14.6 |
| sl_whiff_percent | 16.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.108 | 0.000 | 0.000 | Hitting_2B | 0.107 | 0.000 | -0.107 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.557 | 3.000 | 5.000 | Hitting_AB | 3.537 | 4.000 | -0.537 | -1.000 |
| predicted_AVG | 0.245 | 0.333 | 0.200 | Hitting_AVG | 0.216 | 0.000 | 0.118 | 0.333 |
| predicted_BB | 0.381 | 0.000 | 1.000 | Hitting_BB | 0.384 | 0.000 | -0.384 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.810 | 1.000 | 1.000 | Hitting_H | 0.763 | 0.000 | 0.237 | 1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.102 | 0.000 | -0.102 | 0.000 |
| predicted_OBP | 0.325 | 0.500 | 0.333 | Hitting_OBP | 0.299 | 0.000 | 0.201 | 0.500 |
| predicted_R | 0.449 | 0.000 | 1.000 | Hitting_R | 0.446 | 0.000 | -0.446 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.350 | 0.000 | -0.350 | 0.000 |
| predicted_SLG | 0.439 | 0.333 | 0.200 | Hitting_SLG | 0.342 | 0.000 | -0.009 | 0.333 |
| predicted_SO | 1.330 | 1.000 | 2.000 | Hitting_SO | 1.322 | 1.000 | -0.322 | 0.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_H: 0.8100 -> 1.0000 (boost 0.1900, better) |
| Biggest Deboost | predicted_AB: 3.5570 -> 3.0000 (deboost -0.5570, 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 | 7 | 1 | predicted_AB: 3.5570 -> 5.3579 (boost 1.8009, 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.4435 -> 0.4169 (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 | 8 | 3 | 5 | 2 | 6 | predicted_RBI: 0.5773 -> 1.0000 (boost 0.4227, better) | predicted_AB: 5.3579 -> 5.0000 (deboost -0.3579, worse) | AB rounded to 5 (raw=5.36), rates preserved: AVG=0.228 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6478 -> 1.0000 (boost 0.3522, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3052 -> 0.3330 (boost 0.0278, better) | predicted_SLG: 0.4169 -> 0.2000 (deboost -0.2169, 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_HBP: 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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2000 -> 0.4169 (boost 0.2169, better) | predicted_OBP: 0.3330 -> 0.3052 (deboost -0.0278, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "700932",
"player_name": "Kyle Manzardo",
"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.108,
"predicted_3B": 0.017,
"predicted_AB": 3.557,
"predicted_AVG": 0.245,
"predicted_BB": 0.381,
"predicted_H": 0.81,
"predicted_HR": 0.15,
"predicted_OBP": 0.325,
"predicted_R": 0.449,
"predicted_RBI": 0.41,
"predicted_SLG": 0.439,
"predicted_SO": 1.33
},
"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.3152,
"predicted_3B": 0.0192,
"predicted_AB": 5.3579,
"predicted_AVG": 0.2426,
"predicted_BB": 0.5978,
"predicted_H": 1.2595,
"predicted_HBP": 0.105,
"predicted_HR": 0.2275,
"predicted_OBP": 0.3248,
"predicted_R": 0.6803,
"predicted_RBI": 0.6063,
"predicted_SLG": 0.4435,
"predicted_SO": 1.8504
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.108,
"after": 0.3152,
"delta": 0.2072,
"percent_delta": 1.9185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0192,
"delta": 0.0022,
"percent_delta": 0.1294,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.557,
"after": 5.3579,
"delta": 1.8009,
"percent_delta": 0.5063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2426,
"delta": -0.0024,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.381,
"after": 0.5978,
"delta": 0.2168,
"percent_delta": 0.569,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.2595,
"delta": 0.4495,
"percent_delta": 0.5549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2275,
"delta": 0.0775,
"percent_delta": 0.5167,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3248,
"delta": -0.0002,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.449,
"after": 0.6803,
"delta": 0.2313,
"percent_delta": 0.5151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6063,
"delta": 0.1963,
"percent_delta": 0.4788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.439,
"after": 0.4435,
"delta": 0.0045,
"percent_delta": 0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.33,
"after": 1.8504,
"delta": 0.5204,
"percent_delta": 0.3913,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.557,
"after": 5.3579,
"delta": 1.8009,
"percent_delta": 0.5063,
"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.3152,
"predicted_3B": 0.0192,
"predicted_AB": 5.3579,
"predicted_AVG": 0.2281,
"predicted_BB": 0.594,
"predicted_H": 1.2223,
"predicted_HBP": 0.105,
"predicted_HR": 0.2192,
"predicted_OBP": 0.3052,
"predicted_R": 0.6478,
"predicted_RBI": 0.5773,
"predicted_SLG": 0.4169,
"predicted_SO": 1.8621
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3152,
"after": 0.3152,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0192,
"after": 0.0192,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3579,
"after": 5.3579,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2426,
"after": 0.2281,
"delta": -0.0145,
"percent_delta": -0.0598,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5978,
"after": 0.594,
"delta": -0.0038,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2595,
"after": 1.2223,
"delta": -0.0372,
"percent_delta": -0.0295,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.105,
"after": 0.105,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2275,
"after": 0.2192,
"delta": -0.0083,
"percent_delta": -0.0365,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3248,
"after": 0.3052,
"delta": -0.0196,
"percent_delta": -0.0603,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6803,
"after": 0.6478,
"delta": -0.0325,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6063,
"after": 0.5773,
"delta": -0.029,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4435,
"after": 0.4169,
"delta": -0.0266,
"percent_delta": -0.06,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8504,
"after": 1.8621,
"delta": 0.0117,
"percent_delta": 0.0063,
"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.4435,
"after": 0.4169,
"delta": -0.0266,
"percent_delta": -0.06,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.36), rates preserved: AVG=0.228 HR/AB=0.041",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3152,
"after": 0.0,
"delta": -0.3152,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0192,
"after": 0.0,
"delta": -0.0192,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3579,
"after": 5.0,
"delta": -0.3579,
"percent_delta": -0.0668,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.594,
"after": 1.0,
"delta": 0.406,
"percent_delta": 0.6835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2223,
"after": 1.0,
"delta": -0.2223,
"percent_delta": -0.1819,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.105,
"after": 0.0,
"delta": -0.105,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2192,
"after": 0.0,
"delta": -0.2192,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5773,
"after": 1.0,
"delta": 0.4227,
"percent_delta": 0.7322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8621,
"after": 2.0,
"delta": 0.1379,
"percent_delta": 0.0741,
"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.5773,
"after": 1.0,
"delta": 0.4227,
"percent_delta": 0.7322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.3579,
"after": 5.0,
"delta": -0.3579,
"percent_delta": -0.0668,
"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": 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": 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_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.6478,
"after": 1.0,
"delta": 0.3522,
"percent_delta": 0.5437,
"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": 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_R",
"before": 0.6478,
"after": 1.0,
"delta": 0.3522,
"percent_delta": 0.5437,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.2,
"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.2281,
"after": 0.2,
"delta": -0.0281,
"percent_delta": -0.1232,
"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.3052,
"after": 0.333,
"delta": 0.0278,
"percent_delta": 0.0911,
"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.4169,
"after": 0.2,
"delta": -0.2169,
"percent_delta": -0.5203,
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3052,
"after": 0.333,
"delta": 0.0278,
"percent_delta": 0.0911,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4169,
"after": 0.2,
"delta": -0.2169,
"percent_delta": -0.5203,
"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": 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": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"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": 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": 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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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_HBP",
"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": 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.2281,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3052,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4169,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2281,
"delta": 0.0281,
"percent_delta": 0.1407,
"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": 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.3052,
"delta": -0.0278,
"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_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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.4169,
"delta": 0.2169,
"percent_delta": 1.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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4169,
"delta": 0.2169,
"percent_delta": 1.0843,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3052,
"delta": -0.0278,
"percent_delta": -0.0836,
"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.108,
"after": 0.0,
"delta": -0.108,
"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.557,
"after": 3.0,
"delta": -0.557,
"percent_delta": -0.1566,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2281,
"delta": -0.0169,
"percent_delta": -0.069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.381,
"after": 0.0,
"delta": -0.381,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.0,
"delta": 0.19,
"percent_delta": 0.2346,
"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.325,
"after": 0.3052,
"delta": -0.0198,
"percent_delta": -0.0609,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.449,
"after": 0.0,
"delta": -0.449,
"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.439,
"after": 0.4169,
"delta": -0.0221,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.33,
"after": 1.0,
"delta": -0.33,
"percent_delta": -0.2481,
"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_H",
"before": 0.81,
"after": 1.0,
"delta": 0.19,
"percent_delta": 0.2346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.557,
"after": 3.0,
"delta": -0.557,
"percent_delta": -0.1566,
"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.108 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 3.557 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.381 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.449 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.439 | - |
| predicted_SO | 1.330 | - |
Final model 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.315 | 0.207 |
| predicted_3B | 0.019 | 0.002 |
| predicted_AB | 5.358 | 1.801 |
| predicted_AVG | 0.243 | -0.002 |
| predicted_BB | 0.598 | 0.217 |
| predicted_H | 1.260 | 0.450 |
| predicted_HBP | 0.105 | - |
| predicted_HR | 0.228 | 0.078 |
| predicted_OBP | 0.325 | -0.000 |
| predicted_R | 0.680 | 0.231 |
| predicted_RBI | 0.606 | 0.196 |
| predicted_SLG | 0.444 | 0.005 |
| predicted_SO | 1.850 | 0.520 |
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.315 | 0.000 |
| predicted_3B | 0.019 | 0.000 |
| predicted_AB | 5.358 | 0.000 |
| predicted_AVG | 0.228 | -0.015 |
| predicted_BB | 0.594 | -0.004 |
| predicted_H | 1.222 | -0.037 |
| predicted_HBP | 0.105 | 0.000 |
| predicted_HR | 0.219 | -0.008 |
| predicted_OBP | 0.305 | -0.020 |
| predicted_R | 0.648 | -0.032 |
| predicted_RBI | 0.577 | -0.029 |
| predicted_SLG | 0.417 | -0.027 |
| predicted_SO | 1.862 | 0.012 |
AB rounded to 5 (raw=5.36), rates preserved: AVG=0.228 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 5.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 | 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.315 |
| predicted_3B | 0.000 | -0.019 |
| predicted_AB | 5.000 | -0.358 |
| predicted_AVG | 0.200 | -0.028 |
| predicted_BB | 1.000 | 0.406 |
| predicted_H | 1.000 | -0.222 |
| predicted_HR | 0.000 | -0.219 |
| predicted_OBP | 0.333 | 0.028 |
| predicted_R | 1.000 | 0.352 |
| predicted_RBI | 1.000 | 0.423 |
| predicted_SLG | 0.200 | -0.217 |
| predicted_SO | 2.000 | 0.138 |
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 | 0.000 | -1.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 | 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 | - | 15.000 | 4.000 | 3.000 | 0.000 | 1.000 | 2.000 | 2.000 | 2.000 | 3.000 | 0.2667 | 0.3529 | 0.6667 | 0.2667 | 0.0667 | 0.1333 | 0.1333 | 0.2000 |
| last_10 | 0.20 | 10 | - | 32.000 | 9.000 | 3.000 | 0.000 | 2.000 | 4.000 | 4.000 | 4.000 | 11.000 | 0.2812 | 0.3784 | 0.5625 | 0.2812 | 0.0625 | 0.1250 | 0.1250 | 0.3438 |
| season | 0.60 | 57 | - | 626.000 | 135.000 | 19.000 | 3.000 | 18.000 | 62.000 | 79.000 | 67.000 | 234.000 | 0.2157 | 0.2979 | 0.3419 | 0.2157 | 0.0288 | 0.0990 | 0.1070 | 0.3738 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5810 |
| predicted_3B | 0.0220 |
| predicted_AB | 7.6680 |
| predicted_AVG | 0.2395 |
| predicted_BB | 0.8760 |
| predicted_H | 1.8360 |
| predicted_HBP | 0.1050 |
| predicted_HR | 0.3270 |
| predicted_OBP | 0.3245 |
| predicted_R | 0.9770 |
| predicted_RBI | 0.8580 |
| predicted_SLG | 0.4492 |
| predicted_SO | 2.5180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1080 | 0.5810 | 0.3152 | model_form_blend |
| predicted_3B | 0.0170 | 0.0220 | 0.0192 | model_form_blend |
| predicted_AB | 3.5570 | 7.6680 | 5.3579 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2395 | 0.2426 | model_form_blend |
| predicted_BB | 0.3810 | 0.8760 | 0.5978 | model_form_blend |
| predicted_H | 0.8100 | 1.8360 | 1.2595 | model_form_blend |
| predicted_HBP | - | 0.1050 | 0.1050 | form_only |
| predicted_HR | 0.1500 | 0.3270 | 0.2275 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3245 | 0.3248 | model_form_blend |
| predicted_R | 0.4490 | 0.9770 | 0.6803 | model_form_blend |
| predicted_RBI | 0.4100 | 0.8580 | 0.6063 | model_form_blend |
| predicted_SLG | 0.4390 | 0.4492 | 0.4435 | model_form_blend |
| predicted_SO | 1.3300 | 2.5180 | 1.8504 | 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 | 177 |
| Season rows before report date | 177 |
| Report year | 2026 |
| Profile rows used | 176 |
| 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 | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 1 |
| 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.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 | 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 | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 700932 |
| playerID | 700932 |
| playerName | Kyle Manzardo |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 33.2 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.32 |
| sl_xwoba | 0.316 |
| sl_xba | 0.227 |
| sl_xslg | 0.401 |
| sl_sweet_spot_percent | 35.7 |
| sl_barrel_batted_rate | 12.5 |
| sl_hard_hit_percent | 41.1 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 17.4 |
| sl_whiff_percent | 30.7 |
| 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.232 | 0.000 | 0.000 | Hitting_2B | 0.232 | 0.000 | -0.232 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.200 | 3.000 | 7.000 | Hitting_AB | 3.714 | 4.000 | -0.714 | -1.000 |
| predicted_AVG | 0.240 | 0.000 | 0.286 | Hitting_AVG | 0.237 | 0.000 | -0.237 | 0.000 |
| predicted_BB | 0.668 | 1.000 | 1.000 | Hitting_BB | 0.668 | 0.000 | 0.332 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.035 | 0.000 | -0.035 | 0.000 |
| predicted_H | 1.010 | 0.000 | 2.000 | Hitting_H | 0.880 | 0.000 | -0.880 | 0.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.147 | 0.000 | -0.147 | 0.000 |
| predicted_OBP | 0.332 | 0.250 | 0.375 | Hitting_OBP | 0.351 | 0.000 | -0.101 | 0.250 |
| predicted_R | 0.579 | 0.000 | 1.000 | Hitting_R | 0.579 | 0.000 | -0.579 | 0.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.502 | 0.000 | -0.502 | 0.000 |
| predicted_SLG | 0.450 | 0.000 | 0.286 | Hitting_SLG | 0.418 | 0.000 | -0.418 | 0.000 |
| predicted_SO | 0.556 | 2.000 | 1.000 | Hitting_SO | 0.556 | 2.000 | 1.444 | 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_SO: 0.5560 -> 2.0000 (boost 1.4440, worse) |
| Biggest Deboost | predicted_AB: 4.2000 -> 3.0000 (deboost -1.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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.2000 -> 6.8125 (boost 2.6125, 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_R: 1.2265 -> 1.1679 (deboost -0.0586, 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 | 4 | 2 | predicted_H: 1.6430 -> 2.0000 (boost 0.3570, better) | predicted_2B: 0.4126 -> 0.0000 (deboost -0.4126, worse) | AB rounded to 7 (raw=6.81), rates preserved: AVG=0.241 HR/AB=0.049 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1679 -> 1.0000 (deboost -0.1679, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2412 -> 0.2860 (boost 0.0448, better) | predicted_SLG: 0.4483 -> 0.2860 (deboost -0.1623, 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 -> 2.0000 (boost 1.0000, worse) | predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4483 (boost 0.1623, better) | predicted_AVG: 0.2860 -> 0.2412 (deboost -0.0448, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "608070",
"player_name": "José Ramírez",
"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.232,
"predicted_3B": 0.0,
"predicted_AB": 4.2,
"predicted_AVG": 0.24,
"predicted_BB": 0.668,
"predicted_H": 1.01,
"predicted_HR": 0.18,
"predicted_OBP": 0.332,
"predicted_R": 0.579,
"predicted_RBI": 0.54,
"predicted_SLG": 0.45,
"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.4126,
"predicted_3B": 0.0004,
"predicted_AB": 6.8125,
"predicted_AVG": 0.2456,
"predicted_BB": 1.0349,
"predicted_H": 1.6929,
"predicted_HBP": 0.027,
"predicted_HR": 0.3451,
"predicted_OBP": 0.3383,
"predicted_R": 1.2265,
"predicted_RBI": 0.9215,
"predicted_SLG": 0.4635,
"predicted_SO": 1.0933
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.232,
"after": 0.4126,
"delta": 0.1806,
"percent_delta": 0.7784,
"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.2,
"after": 6.8125,
"delta": 2.6125,
"percent_delta": 0.622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2456,
"delta": 0.0056,
"percent_delta": 0.0233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.668,
"after": 1.0349,
"delta": 0.3669,
"percent_delta": 0.5493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.6929,
"delta": 0.6829,
"percent_delta": 0.6761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.3451,
"delta": 0.1651,
"percent_delta": 0.9172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3383,
"delta": 0.0063,
"percent_delta": 0.019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.579,
"after": 1.2265,
"delta": 0.6475,
"percent_delta": 1.1183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.9215,
"delta": 0.3815,
"percent_delta": 0.7065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.45,
"after": 0.4635,
"delta": 0.0135,
"percent_delta": 0.03,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.556,
"after": 1.0933,
"delta": 0.5373,
"percent_delta": 0.9664,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.2,
"after": 6.8125,
"delta": 2.6125,
"percent_delta": 0.622,
"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.4126,
"predicted_3B": 0.0004,
"predicted_AB": 6.8125,
"predicted_AVG": 0.2412,
"predicted_BB": 1.0284,
"predicted_H": 1.643,
"predicted_HBP": 0.027,
"predicted_HR": 0.3325,
"predicted_OBP": 0.3407,
"predicted_R": 1.1679,
"predicted_RBI": 0.8775,
"predicted_SLG": 0.4483,
"predicted_SO": 1.1002
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4126,
"after": 0.4126,
"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": 6.8125,
"after": 6.8125,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2456,
"after": 0.2412,
"delta": -0.0044,
"percent_delta": -0.0179,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0349,
"after": 1.0284,
"delta": -0.0065,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6929,
"after": 1.643,
"delta": -0.0499,
"percent_delta": -0.0295,
"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.3451,
"after": 0.3325,
"delta": -0.0126,
"percent_delta": -0.0365,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3383,
"after": 0.3407,
"delta": 0.0024,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.2265,
"after": 1.1679,
"delta": -0.0586,
"percent_delta": -0.0478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9215,
"after": 0.8775,
"delta": -0.044,
"percent_delta": -0.0477,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4635,
"after": 0.4483,
"delta": -0.0152,
"percent_delta": -0.0328,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0933,
"after": 1.1002,
"delta": 0.0069,
"percent_delta": 0.0063,
"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": 1.2265,
"after": 1.1679,
"delta": -0.0586,
"percent_delta": -0.0478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.81), rates preserved: AVG=0.241 HR/AB=0.049",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.4126,
"after": 0.0,
"delta": -0.4126,
"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": 6.8125,
"after": 7.0,
"delta": 0.1875,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0284,
"after": 1.0,
"delta": -0.0284,
"percent_delta": -0.0276,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.643,
"after": 2.0,
"delta": 0.357,
"percent_delta": 0.2173,
"direction": "boost",
"projection_effect": "better",
"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.3325,
"after": 0.0,
"delta": -0.3325,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8775,
"after": 1.0,
"delta": 0.1225,
"percent_delta": 0.1396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1002,
"after": 1.0,
"delta": -0.1002,
"percent_delta": -0.0911,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.643,
"after": 2.0,
"delta": 0.357,
"percent_delta": 0.2173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4126,
"after": 0.0,
"delta": -0.4126,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 1.1679,
"after": 1.0,
"delta": -0.1679,
"percent_delta": -0.1438,
"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": 1.1679,
"after": 1.0,
"delta": -0.1679,
"percent_delta": -0.1438,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2412,
"after": 0.286,
"delta": 0.0448,
"percent_delta": 0.1857,
"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": 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_OBP",
"before": 0.3407,
"after": 0.375,
"delta": 0.0343,
"percent_delta": 0.1007,
"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.4483,
"after": 0.286,
"delta": -0.1623,
"percent_delta": -0.362,
"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.286,
"delta": 0.0448,
"percent_delta": 0.1857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4483,
"after": 0.286,
"delta": -0.1623,
"percent_delta": -0.362,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 0.0,
"delta": -2.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": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 5,
"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_AB",
"before": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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.2412,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3407,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4483,
"predicted_SO": 2.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.286,
"after": 0.2412,
"delta": -0.0448,
"percent_delta": -0.1568,
"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.375,
"after": 0.3407,
"delta": -0.0343,
"percent_delta": -0.0915,
"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.286,
"after": 0.4483,
"delta": 0.1623,
"percent_delta": 0.5673,
"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.286,
"after": 0.4483,
"delta": 0.1623,
"percent_delta": 0.5673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2412,
"delta": -0.0448,
"percent_delta": -0.1568,
"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.232,
"after": 0.0,
"delta": -0.232,
"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.2,
"after": 3.0,
"delta": -1.2,
"percent_delta": -0.2857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2412,
"delta": 0.0012,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.668,
"after": 1.0,
"delta": 0.332,
"percent_delta": 0.497,
"direction": "boost",
"projection_effect": "better",
"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.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3407,
"delta": 0.0087,
"percent_delta": 0.0262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.579,
"after": 0.0,
"delta": -0.579,
"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.45,
"after": 0.4483,
"delta": -0.0017,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.556,
"after": 2.0,
"delta": 1.444,
"percent_delta": 2.5971,
"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.556,
"after": 2.0,
"delta": 1.444,
"percent_delta": 2.5971,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.2,
"after": 3.0,
"delta": -1.2,
"percent_delta": -0.2857,
"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.232 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.200 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.668 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.579 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.450 | - |
| 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.413 | 0.181 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.812 | 2.612 |
| predicted_AVG | 0.246 | 0.006 |
| predicted_BB | 1.035 | 0.367 |
| predicted_H | 1.693 | 0.683 |
| predicted_HBP | 0.027 | - |
| predicted_HR | 0.345 | 0.165 |
| predicted_OBP | 0.338 | 0.006 |
| predicted_R | 1.226 | 0.647 |
| predicted_RBI | 0.921 | 0.381 |
| predicted_SLG | 0.464 | 0.014 |
| predicted_SO | 1.093 | 0.537 |
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.413 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.812 | 0.000 |
| predicted_AVG | 0.241 | -0.004 |
| predicted_BB | 1.028 | -0.006 |
| predicted_H | 1.643 | -0.050 |
| predicted_HBP | 0.027 | 0.000 |
| predicted_HR | 0.333 | -0.013 |
| predicted_OBP | 0.341 | 0.002 |
| predicted_R | 1.168 | -0.059 |
| predicted_RBI | 0.877 | -0.044 |
| predicted_SLG | 0.448 | -0.015 |
| predicted_SO | 1.100 | 0.007 |
AB rounded to 7 (raw=6.81), rates preserved: AVG=0.241 HR/AB=0.049
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.413 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.188 |
| predicted_AVG | 0.286 | 0.045 |
| predicted_BB | 1.000 | -0.028 |
| predicted_H | 2.000 | 0.357 |
| predicted_HR | 0.000 | -0.333 |
| predicted_OBP | 0.375 | 0.034 |
| predicted_R | 1.000 | -0.168 |
| predicted_RBI | 1.000 | 0.123 |
| predicted_SLG | 0.286 | -0.162 |
| predicted_SO | 1.000 | -0.100 |
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 | -4.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | - | 19.000 | 5.000 | 0.000 | 0.000 | 2.000 | 2.000 | 6.000 | 2.000 | 5.000 | 0.2632 | 0.3333 | 0.5789 | 0.2632 | 0.1053 | 0.1053 | 0.1053 | 0.2632 |
| last_10 | 0.20 | 10 | - | 38.000 | 11.000 | 5.000 | 0.000 | 2.000 | 7.000 | 9.000 | 4.000 | 6.000 | 0.2895 | 0.3488 | 0.5789 | 0.2895 | 0.0526 | 0.1842 | 0.1053 | 0.1579 |
| season | 0.60 | 66 | - | 962.000 | 228.000 | 60.000 | 0.000 | 38.000 | 130.000 | 150.000 | 173.000 | 144.000 | 0.2370 | 0.3513 | 0.4179 | 0.2370 | 0.0395 | 0.1351 | 0.1798 | 0.1497 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6400 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.1030 |
| predicted_AVG | 0.2527 |
| predicted_BB | 1.4970 |
| predicted_H | 2.5530 |
| predicted_HBP | 0.0270 |
| predicted_HR | 0.5530 |
| predicted_OBP | 0.3463 |
| predicted_R | 2.0420 |
| predicted_RBI | 1.4020 |
| predicted_SLG | 0.4804 |
| predicted_SO | 1.7700 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2320 | 0.6400 | 0.4126 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2000 | 10.1030 | 6.8125 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2527 | 0.2456 | model_form_blend |
| predicted_BB | 0.6680 | 1.4970 | 1.0349 | model_form_blend |
| predicted_H | 1.0100 | 2.5530 | 1.6929 | model_form_blend |
| predicted_HBP | - | 0.0270 | 0.0270 | form_only |
| predicted_HR | 0.1800 | 0.5530 | 0.3451 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3463 | 0.3383 | model_form_blend |
| predicted_R | 0.5790 | 2.0420 | 1.2265 | model_form_blend |
| predicted_RBI | 0.5400 | 1.4020 | 0.9215 | model_form_blend |
| predicted_SLG | 0.4500 | 0.4804 | 0.4635 | model_form_blend |
| predicted_SO | 0.5560 | 1.7700 | 1.0933 | 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 | 259 |
| Season rows before report date | 259 |
| Report year | 2026 |
| Profile rows used | 259 |
| 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.237 |
| 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 | 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 | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 608070 |
| playerID | 608070 |
| playerName | José Ramírez |
| pos | 3B |
| started | True |
| startingPosition | DH |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 13.7 |
| sl_bb_percent | 14.0 |
| sl_woba | 0.337 |
| sl_xwoba | 0.366 |
| sl_xba | 0.286 |
| sl_xslg | 0.46 |
| sl_sweet_spot_percent | 36.5 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 45.2 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 20.0 |
| sl_whiff_percent | 16.6 |
| 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.211 | 0.000 | 0.000 | Hitting_2B | 0.210 | 0.000 | -0.210 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.464 | 4.000 | 6.000 | Hitting_AB | 3.443 | 4.000 | 0.557 | 0.000 |
| predicted_AVG | 0.229 | 0.250 | 0.167 | Hitting_AVG | 0.240 | 0.000 | 0.010 | 0.250 |
| predicted_BB | 0.446 | 0.000 | 1.000 | Hitting_BB | 0.443 | 0.000 | -0.443 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.042 | 0.000 | -0.042 | 0.000 |
| predicted_H | 0.780 | 1.000 | 1.000 | Hitting_H | 0.826 | 0.000 | 0.174 | 1.000 |
| predicted_HR | 0.080 | 1.000 | 0.000 | Hitting_HR | 0.102 | 0.000 | 0.898 | 1.000 |
| predicted_OBP | 0.278 | 0.250 | 0.286 | Hitting_OBP | 0.327 | 0.000 | -0.077 | 0.250 |
| predicted_R | 0.416 | 1.000 | 1.000 | Hitting_R | 0.413 | 0.000 | 0.587 | 1.000 |
| predicted_RBI | 0.350 | 1.000 | 1.000 | Hitting_RBI | 0.467 | 0.000 | 0.533 | 1.000 |
| predicted_SLG | 0.330 | 1.000 | 0.167 | Hitting_SLG | 0.390 | 0.000 | 0.610 | 1.000 |
| predicted_SO | 1.114 | 1.000 | 2.000 | Hitting_SO | 1.108 | 2.000 | -0.108 | -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_HR: 0.0800 -> 1.0000 (boost 0.9200, better) |
| Biggest Deboost | predicted_BB: 0.4460 -> 0.0000 (deboost -0.4460, 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 | 6 | 1 | predicted_AB: 3.4640 -> 5.8058 (boost 2.3418, 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_OBP: 0.2815 -> 0.2911 (boost 0.0096, better) | predicted_AVG: 0.2250 -> 0.2151 (deboost -0.0099, 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.5826 -> 1.0000 (boost 0.4174, better) | predicted_2B: 0.2801 -> 0.0000 (deboost -0.2801, worse) | AB rounded to 6 (raw=5.81), rates preserved: AVG=0.215 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5801 -> 1.0000 (boost 0.4199, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3259 -> 0.1670 (deboost -0.1589, 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_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3259 (boost 0.1589, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682177",
"player_name": "Daniel Schneemann",
"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.211,
"predicted_3B": 0.0,
"predicted_AB": 3.464,
"predicted_AVG": 0.229,
"predicted_BB": 0.446,
"predicted_H": 0.78,
"predicted_HR": 0.08,
"predicted_OBP": 0.278,
"predicted_R": 0.416,
"predicted_RBI": 0.35,
"predicted_SLG": 0.33,
"predicted_SO": 1.114
},
"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.2801,
"predicted_3B": 0.0009,
"predicted_AB": 5.8058,
"predicted_AVG": 0.225,
"predicted_BB": 0.6261,
"predicted_H": 1.287,
"predicted_HBP": 0.004,
"predicted_HR": 0.125,
"predicted_OBP": 0.2815,
"predicted_R": 0.6092,
"predicted_RBI": 0.6118,
"predicted_SLG": 0.3276,
"predicted_SO": 1.8334
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.211,
"after": 0.2801,
"delta": 0.0691,
"percent_delta": 0.3275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.464,
"after": 5.8058,
"delta": 2.3418,
"percent_delta": 0.676,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.225,
"delta": -0.004,
"percent_delta": -0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.446,
"after": 0.6261,
"delta": 0.1801,
"percent_delta": 0.4038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 1.287,
"delta": 0.507,
"percent_delta": 0.65,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.125,
"delta": 0.045,
"percent_delta": 0.5625,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2815,
"delta": 0.0035,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.416,
"after": 0.6092,
"delta": 0.1932,
"percent_delta": 0.4644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.6118,
"delta": 0.2618,
"percent_delta": 0.748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.33,
"after": 0.3276,
"delta": -0.0024,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.114,
"after": 1.8334,
"delta": 0.7194,
"percent_delta": 0.6458,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 7,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.464,
"after": 5.8058,
"delta": 2.3418,
"percent_delta": 0.676,
"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": 7,
"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.2801,
"predicted_3B": 0.0009,
"predicted_AB": 5.8058,
"predicted_AVG": 0.2151,
"predicted_BB": 0.6222,
"predicted_H": 1.249,
"predicted_HBP": 0.004,
"predicted_HR": 0.1204,
"predicted_OBP": 0.2911,
"predicted_R": 0.5801,
"predicted_RBI": 0.5826,
"predicted_SLG": 0.3259,
"predicted_SO": 1.845
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2801,
"after": 0.2801,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.8058,
"after": 5.8058,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2151,
"delta": -0.0099,
"percent_delta": -0.044,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6261,
"after": 0.6222,
"delta": -0.0039,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.287,
"after": 1.249,
"delta": -0.038,
"percent_delta": -0.0295,
"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.125,
"after": 0.1204,
"delta": -0.0046,
"percent_delta": -0.0368,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2815,
"after": 0.2911,
"delta": 0.0096,
"percent_delta": 0.0341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6092,
"after": 0.5801,
"delta": -0.0291,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6118,
"after": 0.5826,
"delta": -0.0292,
"percent_delta": -0.0477,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3276,
"after": 0.3259,
"delta": -0.0017,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.8334,
"after": 1.845,
"delta": 0.0116,
"percent_delta": 0.0063,
"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.2815,
"after": 0.2911,
"delta": 0.0096,
"percent_delta": 0.0341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2151,
"delta": -0.0099,
"percent_delta": -0.044,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.81), rates preserved: AVG=0.215 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2801,
"after": 0.0,
"delta": -0.2801,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.8058,
"after": 6.0,
"delta": 0.1942,
"percent_delta": 0.0334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6222,
"after": 1.0,
"delta": 0.3778,
"percent_delta": 0.6072,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.249,
"after": 1.0,
"delta": -0.249,
"percent_delta": -0.1994,
"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.1204,
"after": 0.0,
"delta": -0.1204,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5826,
"after": 1.0,
"delta": 0.4174,
"percent_delta": 0.7164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.845,
"after": 2.0,
"delta": 0.155,
"percent_delta": 0.084,
"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.5826,
"after": 1.0,
"delta": 0.4174,
"percent_delta": 0.7164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2801,
"after": 0.0,
"delta": -0.2801,
"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": 6.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": 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": 6.0,
"after": 6.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.5801,
"after": 1.0,
"delta": 0.4199,
"percent_delta": 0.7238,
"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": 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_R",
"before": 0.5801,
"after": 1.0,
"delta": 0.4199,
"percent_delta": 0.7238,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2151,
"after": 0.167,
"delta": -0.0481,
"percent_delta": -0.2236,
"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.2911,
"after": 0.286,
"delta": -0.0051,
"percent_delta": -0.0175,
"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.3259,
"after": 0.167,
"delta": -0.1589,
"percent_delta": -0.4876,
"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_SLG",
"before": 0.3259,
"after": 0.167,
"delta": -0.1589,
"percent_delta": -0.4876,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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_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": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2151,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2911,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3259,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.167,
"after": 0.2151,
"delta": 0.0481,
"percent_delta": 0.2882,
"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.286,
"after": 0.2911,
"delta": 0.0051,
"percent_delta": 0.0178,
"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.167,
"after": 0.3259,
"delta": 0.1589,
"percent_delta": 0.9516,
"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.167,
"after": 0.3259,
"delta": 0.1589,
"percent_delta": 0.9516,
"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.211,
"after": 0.0,
"delta": -0.211,
"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.464,
"after": 4.0,
"delta": 0.536,
"percent_delta": 0.1547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2151,
"delta": -0.0139,
"percent_delta": -0.0607,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.446,
"after": 0.0,
"delta": -0.446,
"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": 1.0,
"delta": 0.92,
"percent_delta": 11.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2911,
"delta": 0.0131,
"percent_delta": 0.0471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.416,
"after": 1.0,
"delta": 0.584,
"percent_delta": 1.4038,
"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.33,
"after": 0.3259,
"delta": -0.0041,
"percent_delta": -0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.114,
"after": 1.0,
"delta": -0.114,
"percent_delta": -0.1023,
"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_HR",
"before": 0.08,
"after": 1.0,
"delta": 0.92,
"percent_delta": 11.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.446,
"after": 0.0,
"delta": -0.446,
"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.211 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.464 | - |
| predicted_AVG | 0.229 | - |
| predicted_BB | 0.446 | - |
| predicted_H | 0.780 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.278 | - |
| predicted_R | 0.416 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.330 | - |
| predicted_SO | 1.114 | - |
Final model 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.280 | 0.069 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.806 | 2.342 |
| predicted_AVG | 0.225 | -0.004 |
| predicted_BB | 0.626 | 0.180 |
| predicted_H | 1.287 | 0.507 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.125 | 0.045 |
| predicted_OBP | 0.281 | 0.003 |
| predicted_R | 0.609 | 0.193 |
| predicted_RBI | 0.612 | 0.262 |
| predicted_SLG | 0.328 | -0.002 |
| predicted_SO | 1.833 | 0.719 |
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.280 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.806 | 0.000 |
| predicted_AVG | 0.215 | -0.010 |
| predicted_BB | 0.622 | -0.004 |
| predicted_H | 1.249 | -0.038 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.120 | -0.005 |
| predicted_OBP | 0.291 | 0.010 |
| predicted_R | 0.580 | -0.029 |
| predicted_RBI | 0.583 | -0.029 |
| predicted_SLG | 0.326 | -0.002 |
| predicted_SO | 1.845 | 0.012 |
AB rounded to 6 (raw=5.81), rates preserved: AVG=0.215 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 6.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 | 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.280 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 6.000 | 0.194 |
| predicted_AVG | 0.167 | -0.048 |
| predicted_BB | 1.000 | 0.378 |
| predicted_H | 1.000 | -0.249 |
| predicted_HR | 0.000 | -0.120 |
| predicted_OBP | 0.286 | -0.005 |
| predicted_R | 1.000 | 0.420 |
| predicted_RBI | 1.000 | 0.417 |
| predicted_SLG | 0.167 | -0.159 |
| predicted_SO | 2.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 | 4.000 | -2.000 |
| BB | 0.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 | 0.000 |
| RBI | 1.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 | - | 20.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 7.000 | 0.1500 | 0.1500 | 0.1500 | 0.1500 | 0.0000 | 0.0500 | 0.0000 | 0.3500 |
| last_10 | 0.20 | 7 | - | 35.000 | 8.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 4.000 | 7.000 | 0.2286 | 0.3077 | 0.2286 | 0.2286 | 0.0000 | 0.0286 | 0.1143 | 0.2000 |
| season | 0.60 | 51 | - | 575.000 | 138.000 | 35.000 | 0.000 | 17.000 | 78.000 | 69.000 | 74.000 | 185.000 | 0.2400 | 0.3267 | 0.3896 | 0.2400 | 0.0296 | 0.1356 | 0.1287 | 0.3217 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3690 |
| predicted_3B | 0.0020 |
| predicted_AB | 8.8220 |
| predicted_AVG | 0.2199 |
| predicted_BB | 0.8580 |
| predicted_H | 1.9400 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.1830 |
| predicted_OBP | 0.2861 |
| predicted_R | 0.8580 |
| predicted_RBI | 0.9490 |
| predicted_SLG | 0.3244 |
| predicted_SO | 2.7600 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2110 | 0.3690 | 0.2801 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.4640 | 8.8220 | 5.8058 | model_form_blend |
| predicted_AVG | 0.2290 | 0.2199 | 0.2250 | model_form_blend |
| predicted_BB | 0.4460 | 0.8580 | 0.6261 | model_form_blend |
| predicted_H | 0.7800 | 1.9400 | 1.2870 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0800 | 0.1830 | 0.1250 | model_form_blend |
| predicted_OBP | 0.2780 | 0.2861 | 0.2815 | model_form_blend |
| predicted_R | 0.4160 | 0.8580 | 0.6092 | model_form_blend |
| predicted_RBI | 0.3500 | 0.9490 | 0.6118 | model_form_blend |
| predicted_SLG | 0.3300 | 0.3244 | 0.3276 | model_form_blend |
| predicted_SO | 1.1140 | 2.7600 | 1.8334 | 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 | 166 |
| 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 | 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 | 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 | 3B-SS |
| gameID | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 682177 |
| playerID | 682177 |
| playerName | Daniel Schneemann |
| pos | CF |
| started | True |
| startingPosition | 3B |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 28.9 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.298 |
| sl_xwoba | 0.302 |
| sl_xba | 0.234 |
| sl_xslg | 0.371 |
| sl_sweet_spot_percent | 37.4 |
| sl_barrel_batted_rate | 6.1 |
| sl_hard_hit_percent | 36.8 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 10.7 |
| sl_whiff_percent | 30.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.044 | 0.000 | 0.000 | Hitting_2B | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_3B | 0.009 | 0.000 | 0.000 | Hitting_3B | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_AB | 3.053 | 4.000 | 5.000 | Hitting_AB | 2.833 | 4.000 | 1.167 | 0.000 |
| predicted_AVG | 0.224 | 0.000 | 0.200 | Hitting_AVG | 0.153 | 0.250 | -0.153 | -0.250 |
| predicted_BB | 0.248 | 0.000 | 0.000 | Hitting_BB | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.570 | 0.000 | 1.000 | Hitting_H | 0.433 | 1.000 | -0.433 | -1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_OBP | 0.240 | 0.000 | 0.200 | Hitting_OBP | 0.207 | 0.250 | -0.207 | -0.250 |
| predicted_R | 0.204 | 0.000 | 0.000 | Hitting_R | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_RBI | 0.280 | 0.000 | 0.000 | Hitting_RBI | 0.233 | 0.000 | -0.233 | 0.000 |
| predicted_SLG | 0.325 | 0.000 | 0.200 | Hitting_SLG | 0.341 | 0.250 | -0.341 | -0.250 |
| predicted_SO | 0.735 | 0.000 | 1.000 | Hitting_SO | 0.633 | 0.000 | -0.633 | 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.0530 -> 4.0000 (boost 0.9470, better) |
| Biggest Deboost | predicted_SO: 0.7350 -> 0.0000 (deboost -0.7350, 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 | 10 | 7 | 3 | 6 | 4 | predicted_AB: 3.0530 -> 4.6838 (boost 1.6308, better) | predicted_SLG: 0.3250 -> 0.2988 (deboost -0.0262, 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.2988 -> 0.2615 (deboost -0.0373, 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: 4.6838 -> 5.0000 (boost 0.3162, better) | predicted_RBI: 0.3429 -> 0.0000 (deboost -0.3429, worse) | AB rounded to 5 (raw=4.68), rates preserved: AVG=0.167 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3361 -> 0.0000 (deboost -0.3361, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.1669 -> 0.2000 (boost 0.0331, better) | predicted_SLG: 0.2615 -> 0.2000 (deboost -0.0615, 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: 5.0000 -> 4.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.2000 -> 0.2615 (boost 0.0615, better) | predicted_AVG: 0.2000 -> 0.1669 (deboost -0.0331, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672275",
"player_name": "Patrick Bailey",
"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.044,
"predicted_3B": 0.009,
"predicted_AB": 3.053,
"predicted_AVG": 0.224,
"predicted_BB": 0.248,
"predicted_H": 0.57,
"predicted_HR": 0.07,
"predicted_OBP": 0.24,
"predicted_R": 0.204,
"predicted_RBI": 0.28,
"predicted_SLG": 0.325,
"predicted_SO": 0.735
},
"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.1052,
"predicted_3B": 0.0535,
"predicted_AB": 4.6838,
"predicted_AVG": 0.198,
"predicted_BB": 0.3092,
"predicted_H": 0.8055,
"predicted_HBP": 0.005,
"predicted_HR": 0.0799,
"predicted_OBP": 0.2263,
"predicted_R": 0.353,
"predicted_RBI": 0.3601,
"predicted_SLG": 0.2988,
"predicted_SO": 1.1581
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.044,
"after": 0.1052,
"delta": 0.0612,
"percent_delta": 1.3909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.0535,
"delta": 0.0445,
"percent_delta": 4.9444,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.053,
"after": 4.6838,
"delta": 1.6308,
"percent_delta": 0.5342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.198,
"delta": -0.026,
"percent_delta": -0.1161,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.248,
"after": 0.3092,
"delta": 0.0612,
"percent_delta": 0.2468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.57,
"after": 0.8055,
"delta": 0.2355,
"percent_delta": 0.4132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0799,
"delta": 0.0099,
"percent_delta": 0.1414,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.24,
"after": 0.2263,
"delta": -0.0137,
"percent_delta": -0.0571,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.204,
"after": 0.353,
"delta": 0.149,
"percent_delta": 0.7304,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.3601,
"delta": 0.0801,
"percent_delta": 0.2861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.325,
"after": 0.2988,
"delta": -0.0262,
"percent_delta": -0.0806,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.735,
"after": 1.1581,
"delta": 0.4231,
"percent_delta": 0.5756,
"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_AB",
"before": 3.053,
"after": 4.6838,
"delta": 1.6308,
"percent_delta": 0.5342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.325,
"after": 0.2988,
"delta": -0.0262,
"percent_delta": -0.0806,
"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": 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.1052,
"predicted_3B": 0.0535,
"predicted_AB": 4.6838,
"predicted_AVG": 0.1669,
"predicted_BB": 0.3073,
"predicted_H": 0.7817,
"predicted_HBP": 0.005,
"predicted_HR": 0.077,
"predicted_OBP": 0.2182,
"predicted_R": 0.3361,
"predicted_RBI": 0.3429,
"predicted_SLG": 0.2615,
"predicted_SO": 1.1654
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1052,
"after": 0.1052,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0535,
"after": 0.0535,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6838,
"after": 4.6838,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.198,
"after": 0.1669,
"delta": -0.0311,
"percent_delta": -0.1571,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3092,
"after": 0.3073,
"delta": -0.0019,
"percent_delta": -0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8055,
"after": 0.7817,
"delta": -0.0238,
"percent_delta": -0.0295,
"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.0799,
"after": 0.077,
"delta": -0.0029,
"percent_delta": -0.0363,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2263,
"after": 0.2182,
"delta": -0.0081,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.353,
"after": 0.3361,
"delta": -0.0169,
"percent_delta": -0.0479,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3601,
"after": 0.3429,
"delta": -0.0172,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2988,
"after": 0.2615,
"delta": -0.0373,
"percent_delta": -0.1248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1581,
"after": 1.1654,
"delta": 0.0073,
"percent_delta": 0.0063,
"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.2988,
"after": 0.2615,
"delta": -0.0373,
"percent_delta": -0.1248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.68), rates preserved: AVG=0.167 HR/AB=0.016",
"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.1052,
"after": 0.0,
"delta": -0.1052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0535,
"after": 0.0,
"delta": -0.0535,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.6838,
"after": 5.0,
"delta": 0.3162,
"percent_delta": 0.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3073,
"after": 0.0,
"delta": -0.3073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7817,
"after": 1.0,
"delta": 0.2183,
"percent_delta": 0.2793,
"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.077,
"after": 0.0,
"delta": -0.077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3429,
"after": 0.0,
"delta": -0.3429,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1654,
"after": 1.0,
"delta": -0.1654,
"percent_delta": -0.1419,
"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": 4.6838,
"after": 5.0,
"delta": 0.3162,
"percent_delta": 0.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3429,
"after": 0.0,
"delta": -0.3429,
"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": 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": 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.3361,
"after": 0.0,
"delta": -0.3361,
"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.3361,
"after": 0.0,
"delta": -0.3361,
"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": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 0.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.1669,
"after": 0.2,
"delta": 0.0331,
"percent_delta": 0.1983,
"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.2182,
"after": 0.2,
"delta": -0.0182,
"percent_delta": -0.0834,
"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.2615,
"after": 0.2,
"delta": -0.0615,
"percent_delta": -0.2352,
"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.1669,
"after": 0.2,
"delta": 0.0331,
"percent_delta": 0.1983,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2615,
"after": 0.2,
"delta": -0.0615,
"percent_delta": -0.2352,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 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.1669,
"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.2182,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2615,
"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.1669,
"delta": -0.0331,
"percent_delta": -0.1655,
"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.2,
"after": 0.2182,
"delta": 0.0182,
"percent_delta": 0.0909,
"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.2615,
"delta": 0.0615,
"percent_delta": 0.3076,
"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.2,
"after": 0.2615,
"delta": 0.0615,
"percent_delta": 0.3076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.1669,
"delta": -0.0331,
"percent_delta": -0.1655,
"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.044,
"after": 0.0,
"delta": -0.044,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.053,
"after": 4.0,
"delta": 0.947,
"percent_delta": 0.3102,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.1669,
"delta": -0.0571,
"percent_delta": -0.2549,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.248,
"after": 0.0,
"delta": -0.248,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.57,
"after": 0.0,
"delta": -0.57,
"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.24,
"after": 0.2182,
"delta": -0.0218,
"percent_delta": -0.0908,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"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.28,
"after": 0.0,
"delta": -0.28,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.325,
"after": 0.2615,
"delta": -0.0635,
"percent_delta": -0.1954,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.735,
"after": 0.0,
"delta": -0.735,
"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.053,
"after": 4.0,
"delta": 0.947,
"percent_delta": 0.3102,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.735,
"after": 0.0,
"delta": -0.735,
"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.044 | - |
| predicted_3B | 0.009 | - |
| predicted_AB | 3.053 | - |
| predicted_AVG | 0.224 | - |
| predicted_BB | 0.248 | - |
| predicted_H | 0.570 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.240 | - |
| predicted_R | 0.204 | - |
| predicted_RBI | 0.280 | - |
| predicted_SLG | 0.325 | - |
| predicted_SO | 0.735 | - |
Final model 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.105 | 0.061 |
| predicted_3B | 0.053 | 0.044 |
| predicted_AB | 4.684 | 1.631 |
| predicted_AVG | 0.198 | -0.026 |
| predicted_BB | 0.309 | 0.061 |
| predicted_H | 0.805 | 0.236 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.080 | 0.010 |
| predicted_OBP | 0.226 | -0.014 |
| predicted_R | 0.353 | 0.149 |
| predicted_RBI | 0.360 | 0.080 |
| predicted_SLG | 0.299 | -0.026 |
| predicted_SO | 1.158 | 0.423 |
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.105 | 0.000 |
| predicted_3B | 0.053 | 0.000 |
| predicted_AB | 4.684 | 0.000 |
| predicted_AVG | 0.167 | -0.031 |
| predicted_BB | 0.307 | -0.002 |
| predicted_H | 0.782 | -0.024 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.077 | -0.003 |
| predicted_OBP | 0.218 | -0.008 |
| predicted_R | 0.336 | -0.017 |
| predicted_RBI | 0.343 | -0.017 |
| predicted_SLG | 0.262 | -0.037 |
| predicted_SO | 1.165 | 0.007 |
AB rounded to 5 (raw=4.68), rates preserved: AVG=0.167 HR/AB=0.016
| 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 | - |
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 | 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.105 |
| predicted_3B | 0.000 | -0.053 |
| predicted_AB | 5.000 | 0.316 |
| predicted_AVG | 0.200 | 0.033 |
| predicted_BB | 0.000 | -0.307 |
| predicted_H | 1.000 | 0.218 |
| predicted_HR | 0.000 | -0.077 |
| predicted_OBP | 0.200 | -0.018 |
| predicted_R | 0.000 | -0.336 |
| predicted_RBI | 0.000 | -0.343 |
| predicted_SLG | 0.200 | -0.061 |
| predicted_SO | 1.000 | -0.165 |
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 | - | 18.000 | 3.000 | 1.000 | 1.000 | 0.000 | 1.000 | 2.000 | 0.000 | 5.000 | 0.1667 | 0.1667 | 0.3333 | 0.1667 | 0.0000 | 0.0556 | 0.0000 | 0.2778 |
| last_10 | 0.20 | 7 | - | 31.000 | 6.000 | 1.000 | 1.000 | 0.000 | 1.000 | 2.000 | 0.000 | 9.000 | 0.1935 | 0.1935 | 0.2903 | 0.1935 | 0.0000 | 0.0323 | 0.0000 | 0.2903 |
| season | 0.60 | 40 | - | 345.000 | 51.000 | 5.000 | 1.000 | 6.000 | 24.000 | 23.000 | 28.000 | 83.000 | 0.1478 | 0.2112 | 0.2203 | 0.1478 | 0.0174 | 0.0696 | 0.0812 | 0.2406 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1870 |
| predicted_3B | 0.1130 |
| predicted_AB | 6.8610 |
| predicted_AVG | 0.1632 |
| predicted_BB | 0.3910 |
| predicted_H | 1.1200 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.0930 |
| predicted_OBP | 0.2079 |
| predicted_R | 0.5520 |
| predicted_RBI | 0.4670 |
| predicted_SLG | 0.2639 |
| predicted_SO | 1.7230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0440 | 0.1870 | 0.1052 | model_form_blend |
| predicted_3B | 0.0090 | 0.1130 | 0.0535 | model_form_blend |
| predicted_AB | 3.0530 | 6.8610 | 4.6838 | model_form_blend |
| predicted_AVG | 0.2240 | 0.1632 | 0.1980 | model_form_blend |
| predicted_BB | 0.2480 | 0.3910 | 0.3092 | model_form_blend |
| predicted_H | 0.5700 | 1.1200 | 0.8055 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.0700 | 0.0930 | 0.0799 | model_form_blend |
| predicted_OBP | 0.2400 | 0.2079 | 0.2263 | model_form_blend |
| predicted_R | 0.2040 | 0.5520 | 0.3530 | model_form_blend |
| predicted_RBI | 0.2800 | 0.4670 | 0.3601 | model_form_blend |
| predicted_SLG | 0.3250 | 0.2639 | 0.2988 | model_form_blend |
| predicted_SO | 0.7350 | 1.7230 | 1.1581 | 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 | 30 |
| Season rows before report date | 30 |
| Report year | 2026 |
| Profile rows used | 113 |
| 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.148 |
| 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 | 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 | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 672275 |
| playerID | 672275 |
| playerName | Patrick Bailey |
| pos | C |
| started | True |
| startingPosition | C |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 24.4 |
| sl_bb_percent | 6.7 |
| sl_woba | 0.195 |
| sl_xwoba | 0.278 |
| sl_xba | 0.219 |
| sl_xslg | 0.367 |
| sl_sweet_spot_percent | 28.0 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 37.6 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 12.2 |
| sl_whiff_percent | 26.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.201 | 0.000 | 0.000 | Hitting_2B | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_3B | 0.005 | 0.000 | 0.000 | Hitting_3B | 0.005 | 0.000 | -0.005 | 0.000 |
| predicted_AB | 3.844 | 4.000 | 6.000 | Hitting_AB | 3.787 | 4.000 | 0.213 | 0.000 |
| predicted_AVG | 0.219 | 0.500 | 0.167 | Hitting_AVG | 0.256 | 0.250 | 0.244 | 0.250 |
| predicted_BB | 0.126 | 0.000 | 0.000 | Hitting_BB | 0.124 | 0.000 | -0.124 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 0.320 | 2.000 | 1.000 | Hitting_H | 0.970 | 1.000 | 1.030 | 1.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.188 | 0.000 | -0.188 | 0.000 |
| predicted_OBP | 0.244 | 0.500 | 0.167 | Hitting_OBP | 0.296 | 0.250 | 0.204 | 0.250 |
| predicted_R | 0.528 | 0.000 | 1.000 | Hitting_R | 0.520 | 0.000 | -0.520 | 0.000 |
| predicted_RBI | 0.170 | 0.000 | 1.000 | Hitting_RBI | 0.589 | 0.000 | -0.589 | 0.000 |
| predicted_SLG | 0.356 | 0.500 | 0.167 | Hitting_SLG | 0.460 | 0.250 | 0.040 | 0.250 |
| predicted_SO | 0.834 | 2.000 | 1.000 | Hitting_SO | 0.822 | 2.000 | 1.178 | 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_H: 0.3200 -> 2.0000 (boost 1.6800, better) |
| Biggest Deboost | predicted_R: 0.5280 -> 0.0000 (deboost -0.5280, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.8440 -> 6.3536 (boost 2.5096, 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.3611 -> 0.2926 (deboost -0.0685, 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_RBI: 0.5377 -> 1.0000 (boost 0.4623, better) | predicted_SO: 1.4448 -> 1.0000 (deboost -0.4448, better) | AB rounded to 6 (raw=6.35), rates preserved: AVG=0.170 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6488 -> 1.0000 (boost 0.3512, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.2926 -> 0.1670 (deboost -0.1256, 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_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.1670 -> 0.2926 (boost 0.1256, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682657",
"player_name": "Angel Martínez",
"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.201,
"predicted_3B": 0.005,
"predicted_AB": 3.844,
"predicted_AVG": 0.219,
"predicted_BB": 0.126,
"predicted_H": 0.32,
"predicted_HR": 0.04,
"predicted_OBP": 0.244,
"predicted_R": 0.528,
"predicted_RBI": 0.17,
"predicted_SLG": 0.356,
"predicted_SO": 0.834
},
"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.3206,
"predicted_3B": 0.0068,
"predicted_AB": 6.3536,
"predicted_AVG": 0.2206,
"predicted_BB": 0.1647,
"predicted_H": 1.1143,
"predicted_HBP": 0.302,
"predicted_HR": 0.1534,
"predicted_OBP": 0.2519,
"predicted_R": 0.6814,
"predicted_RBI": 0.5647,
"predicted_SLG": 0.3611,
"predicted_SO": 1.4358
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.201,
"after": 0.3206,
"delta": 0.1196,
"percent_delta": 0.595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.005,
"after": 0.0068,
"delta": 0.0018,
"percent_delta": 0.36,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.844,
"after": 6.3536,
"delta": 2.5096,
"percent_delta": 0.6529,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.219,
"after": 0.2206,
"delta": 0.0016,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.126,
"after": 0.1647,
"delta": 0.0387,
"percent_delta": 0.3071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.32,
"after": 1.1143,
"delta": 0.7943,
"percent_delta": 2.4822,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.1534,
"delta": 0.1134,
"percent_delta": 2.835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.244,
"after": 0.2519,
"delta": 0.0079,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.528,
"after": 0.6814,
"delta": 0.1534,
"percent_delta": 0.2905,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.5647,
"delta": 0.3947,
"percent_delta": 2.3218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.3611,
"delta": 0.0051,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.834,
"after": 1.4358,
"delta": 0.6018,
"percent_delta": 0.7216,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.844,
"after": 6.3536,
"delta": 2.5096,
"percent_delta": 0.6529,
"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": 9,
"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.3206,
"predicted_3B": 0.0068,
"predicted_AB": 6.3536,
"predicted_AVG": 0.1702,
"predicted_BB": 0.1637,
"predicted_H": 1.0814,
"predicted_HBP": 0.302,
"predicted_HR": 0.1478,
"predicted_OBP": 0.191,
"predicted_R": 0.6488,
"predicted_RBI": 0.5377,
"predicted_SLG": 0.2926,
"predicted_SO": 1.4448
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3206,
"after": 0.3206,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0068,
"after": 0.0068,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.3536,
"after": 6.3536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2206,
"after": 0.1702,
"delta": -0.0504,
"percent_delta": -0.2285,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1647,
"after": 0.1637,
"delta": -0.001,
"percent_delta": -0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1143,
"after": 1.0814,
"delta": -0.0329,
"percent_delta": -0.0295,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.302,
"after": 0.302,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1534,
"after": 0.1478,
"delta": -0.0056,
"percent_delta": -0.0365,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2519,
"after": 0.191,
"delta": -0.0609,
"percent_delta": -0.2418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6814,
"after": 0.6488,
"delta": -0.0326,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5647,
"after": 0.5377,
"delta": -0.027,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3611,
"after": 0.2926,
"delta": -0.0685,
"percent_delta": -0.1897,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4358,
"after": 1.4448,
"delta": 0.009,
"percent_delta": 0.0063,
"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.3611,
"after": 0.2926,
"delta": -0.0685,
"percent_delta": -0.1897,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.35), rates preserved: AVG=0.170 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.3206,
"after": 0.0,
"delta": -0.3206,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0068,
"after": 0.0,
"delta": -0.0068,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.3536,
"after": 6.0,
"delta": -0.3536,
"percent_delta": -0.0557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1637,
"after": 0.0,
"delta": -0.1637,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0814,
"after": 1.0,
"delta": -0.0814,
"percent_delta": -0.0753,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.302,
"after": 0.0,
"delta": -0.302,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1478,
"after": 0.0,
"delta": -0.1478,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5377,
"after": 1.0,
"delta": 0.4623,
"percent_delta": 0.8598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4448,
"after": 1.0,
"delta": -0.4448,
"percent_delta": -0.3079,
"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_RBI",
"before": 0.5377,
"after": 1.0,
"delta": 0.4623,
"percent_delta": 0.8598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4448,
"after": 1.0,
"delta": -0.4448,
"percent_delta": -0.3079,
"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": 6.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": 6.0,
"after": 6.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.6488,
"after": 1.0,
"delta": 0.3512,
"percent_delta": 0.5413,
"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.6488,
"after": 1.0,
"delta": 0.3512,
"percent_delta": 0.5413,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.167,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1702,
"after": 0.167,
"delta": -0.0032,
"percent_delta": -0.0188,
"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.191,
"after": 0.167,
"delta": -0.024,
"percent_delta": -0.1257,
"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.2926,
"after": 0.167,
"delta": -0.1256,
"percent_delta": -0.4293,
"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.2926,
"after": 0.167,
"delta": -0.1256,
"percent_delta": -0.4293,
"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": 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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 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": 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_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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.1702,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.191,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2926,
"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.167,
"after": 0.1702,
"delta": 0.0032,
"percent_delta": 0.0192,
"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.167,
"after": 0.191,
"delta": 0.024,
"percent_delta": 0.144,
"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.167,
"after": 0.2926,
"delta": 0.1256,
"percent_delta": 0.752,
"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.167,
"after": 0.2926,
"delta": 0.1256,
"percent_delta": 0.752,
"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.201,
"after": 0.0,
"delta": -0.201,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.844,
"after": 4.0,
"delta": 0.156,
"percent_delta": 0.0406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.219,
"after": 0.1702,
"delta": -0.0488,
"percent_delta": -0.2228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.126,
"after": 0.0,
"delta": -0.126,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.32,
"after": 2.0,
"delta": 1.68,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.244,
"after": 0.191,
"delta": -0.053,
"percent_delta": -0.2172,
"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.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.2926,
"delta": -0.0634,
"percent_delta": -0.1781,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.834,
"after": 2.0,
"delta": 1.166,
"percent_delta": 1.3981,
"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_H",
"before": 0.32,
"after": 2.0,
"delta": 1.68,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.528,
"after": 0.0,
"delta": -0.528,
"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.201 | - |
| predicted_3B | 0.005 | - |
| predicted_AB | 3.844 | - |
| predicted_AVG | 0.219 | - |
| predicted_BB | 0.126 | - |
| predicted_H | 0.320 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.244 | - |
| predicted_R | 0.528 | - |
| predicted_RBI | 0.170 | - |
| predicted_SLG | 0.356 | - |
| predicted_SO | 0.834 | - |
Final model 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.321 | 0.120 |
| predicted_3B | 0.007 | 0.002 |
| predicted_AB | 6.354 | 2.510 |
| predicted_AVG | 0.221 | 0.002 |
| predicted_BB | 0.165 | 0.039 |
| predicted_H | 1.114 | 0.794 |
| predicted_HBP | 0.302 | - |
| predicted_HR | 0.153 | 0.113 |
| predicted_OBP | 0.252 | 0.008 |
| predicted_R | 0.681 | 0.153 |
| predicted_RBI | 0.565 | 0.395 |
| predicted_SLG | 0.361 | 0.005 |
| predicted_SO | 1.436 | 0.602 |
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.321 | 0.000 |
| predicted_3B | 0.007 | 0.000 |
| predicted_AB | 6.354 | 0.000 |
| predicted_AVG | 0.170 | -0.050 |
| predicted_BB | 0.164 | -0.001 |
| predicted_H | 1.081 | -0.033 |
| predicted_HBP | 0.302 | 0.000 |
| predicted_HR | 0.148 | -0.006 |
| predicted_OBP | 0.191 | -0.061 |
| predicted_R | 0.649 | -0.033 |
| predicted_RBI | 0.538 | -0.027 |
| predicted_SLG | 0.293 | -0.068 |
| predicted_SO | 1.445 | 0.009 |
AB rounded to 6 (raw=6.35), rates preserved: AVG=0.170 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.321 |
| predicted_3B | 0.000 | -0.007 |
| predicted_AB | 6.000 | -0.354 |
| predicted_AVG | 0.167 | -0.003 |
| predicted_BB | 0.000 | -0.164 |
| predicted_H | 1.000 | -0.081 |
| predicted_HR | 0.000 | -0.148 |
| predicted_OBP | 0.167 | -0.024 |
| predicted_R | 1.000 | 0.351 |
| predicted_RBI | 1.000 | 0.462 |
| predicted_SLG | 0.167 | -0.126 |
| 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 | 4.000 | -2.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 | 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 | 2.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.1176 | 0.1667 | 0.1765 | 0.1177 | 0.0000 | 0.0000 | 0.0000 | 0.2353 |
| last_10 | 0.20 | 9 | - | 36.000 | 8.000 | 1.000 | 0.000 | 0.000 | 3.000 | 1.000 | 0.000 | 10.000 | 0.2222 | 0.2432 | 0.2500 | 0.2222 | 0.0000 | 0.0833 | 0.0000 | 0.2778 |
| season | 0.60 | 57 | - | 765.000 | 196.000 | 40.000 | 1.000 | 38.000 | 119.000 | 105.000 | 25.000 | 166.000 | 0.2562 | 0.2956 | 0.4601 | 0.2562 | 0.0497 | 0.1556 | 0.0327 | 0.2170 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4730 |
| predicted_3B | 0.0090 |
| predicted_AB | 9.5530 |
| predicted_AVG | 0.2227 |
| predicted_BB | 0.2140 |
| predicted_H | 2.1270 |
| predicted_HBP | 0.3020 |
| predicted_HR | 0.2980 |
| predicted_OBP | 0.2619 |
| predicted_R | 0.8770 |
| predicted_RBI | 1.0680 |
| predicted_SLG | 0.3675 |
| predicted_SO | 2.2030 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2010 | 0.4730 | 0.3206 | model_form_blend |
| predicted_3B | 0.0050 | 0.0090 | 0.0068 | model_form_blend |
| predicted_AB | 3.8440 | 9.5530 | 6.3536 | model_form_blend |
| predicted_AVG | 0.2190 | 0.2227 | 0.2206 | model_form_blend |
| predicted_BB | 0.1260 | 0.2140 | 0.1647 | model_form_blend |
| predicted_H | 0.3200 | 2.1270 | 1.1143 | model_form_blend |
| predicted_HBP | - | 0.3020 | 0.3020 | form_only |
| predicted_HR | 0.0400 | 0.2980 | 0.1534 | model_form_blend |
| predicted_OBP | 0.2440 | 0.2619 | 0.2519 | model_form_blend |
| predicted_R | 0.5280 | 0.8770 | 0.6814 | model_form_blend |
| predicted_RBI | 0.1700 | 1.0680 | 0.5647 | model_form_blend |
| predicted_SLG | 0.3560 | 0.3675 | 0.3611 | model_form_blend |
| predicted_SO | 0.8340 | 2.2030 | 1.4358 | 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 | 199 |
| 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 | 2 |
| 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 | 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 | LF |
| gameID | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 682657 |
| playerID | 682657 |
| playerName | Angel Martínez |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.5 |
| sl_bb_percent | 2.7 |
| sl_woba | 0.301 |
| sl_xwoba | 0.295 |
| sl_xba | 0.247 |
| sl_xslg | 0.391 |
| sl_sweet_spot_percent | 34.8 |
| sl_barrel_batted_rate | 7.4 |
| sl_hard_hit_percent | 34.4 |
| sl_exit_velocity_avg | 87.6 |
| sl_launch_angle_avg | 14.6 |
| sl_whiff_percent | 18.9 |
| 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.156 | 0.000 | 0.000 | Hitting_2B | 0.155 | 0.000 | -0.155 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.772 | 4.000 | 7.000 | Hitting_AB | 3.756 | 3.000 | 0.244 | 1.000 |
| predicted_AVG | 0.243 | 0.250 | 0.286 | Hitting_AVG | 0.214 | 0.667 | 0.036 | -0.417 |
| predicted_BB | 0.641 | 0.000 | 1.000 | Hitting_BB | 0.639 | 0.000 | -0.639 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.870 | 1.000 | 2.000 | Hitting_H | 0.803 | 2.000 | 0.197 | -1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_OBP | 0.324 | 0.250 | 0.375 | Hitting_OBP | 0.329 | 0.667 | -0.079 | -0.417 |
| predicted_R | 0.544 | 0.000 | 1.000 | Hitting_R | 0.542 | 0.000 | -0.542 | 0.000 |
| predicted_RBI | 0.260 | 0.000 | 0.000 | Hitting_RBI | 0.235 | 0.000 | -0.235 | 0.000 |
| predicted_SLG | 0.335 | 0.250 | 0.286 | Hitting_SLG | 0.268 | 0.667 | -0.018 | -0.417 |
| predicted_SO | 0.494 | 0.000 | 1.000 | Hitting_SO | 0.492 | 0.000 | -0.492 | 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_AB: 3.7720 -> 4.0000 (boost 0.2280, better) |
| Biggest Deboost | predicted_BB: 0.6410 -> 0.0000 (deboost -0.6410, 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 | 7 | 1 | 6 | 2 | predicted_AB: 3.7720 -> 7.2078 (boost 3.4358, better) | predicted_SLG: 0.3350 -> 0.3177 (deboost -0.0173, 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_H: 1.7093 -> 1.6589 (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 | 7 | 3 | 4 | 2 | 5 | predicted_H: 1.6589 -> 2.0000 (boost 0.3411, better) | predicted_RBI: 0.3575 -> 0.0000 (deboost -0.3575, worse) | AB rounded to 7 (raw=7.21), rates preserved: AVG=0.230 HR/AB=0.006 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9439 -> 1.0000 (boost 0.0561, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3188 -> 0.3750 (boost 0.0562, better) | predicted_SLG: 0.2928 -> 0.2860 (deboost -0.0068, 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: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.2928 (boost 0.0068, better) | predicted_OBP: 0.3750 -> 0.3188 (deboost -0.0562, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "680757",
"player_name": "Steven Kwan",
"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.156,
"predicted_3B": 0.0,
"predicted_AB": 3.772,
"predicted_AVG": 0.243,
"predicted_BB": 0.641,
"predicted_H": 0.87,
"predicted_HR": 0.05,
"predicted_OBP": 0.324,
"predicted_R": 0.544,
"predicted_RBI": 0.26,
"predicted_SLG": 0.335,
"predicted_SO": 0.494
},
"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.3125,
"predicted_3B": 0.0004,
"predicted_AB": 7.2078,
"predicted_AVG": 0.2416,
"predicted_BB": 0.9437,
"predicted_H": 1.7093,
"predicted_HBP": 0.054,
"predicted_HR": 0.0478,
"predicted_OBP": 0.3213,
"predicted_R": 0.9913,
"predicted_RBI": 0.3754,
"predicted_SLG": 0.3177,
"predicted_SO": 0.8281
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.156,
"after": 0.3125,
"delta": 0.1565,
"percent_delta": 1.0032,
"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": 3.772,
"after": 7.2078,
"delta": 3.4358,
"percent_delta": 0.9109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2416,
"delta": -0.0014,
"percent_delta": -0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.641,
"after": 0.9437,
"delta": 0.3027,
"percent_delta": 0.4722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 1.7093,
"delta": 0.8393,
"percent_delta": 0.9647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0478,
"delta": -0.0022,
"percent_delta": -0.044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.324,
"after": 0.3213,
"delta": -0.0027,
"percent_delta": -0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.544,
"after": 0.9913,
"delta": 0.4473,
"percent_delta": 0.8222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.3754,
"delta": 0.1154,
"percent_delta": 0.4438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.335,
"after": 0.3177,
"delta": -0.0173,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.494,
"after": 0.8281,
"delta": 0.3341,
"percent_delta": 0.6763,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.772,
"after": 7.2078,
"delta": 3.4358,
"percent_delta": 0.9109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.335,
"after": 0.3177,
"delta": -0.0173,
"percent_delta": -0.0516,
"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": 58
}
},
{
"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.3125,
"predicted_3B": 0.0004,
"predicted_AB": 7.2078,
"predicted_AVG": 0.2302,
"predicted_BB": 0.9378,
"predicted_H": 1.6589,
"predicted_HBP": 0.054,
"predicted_HR": 0.0461,
"predicted_OBP": 0.3188,
"predicted_R": 0.9439,
"predicted_RBI": 0.3575,
"predicted_SLG": 0.2928,
"predicted_SO": 0.8333
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3125,
"after": 0.3125,
"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": 7.2078,
"after": 7.2078,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2416,
"after": 0.2302,
"delta": -0.0114,
"percent_delta": -0.0472,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9437,
"after": 0.9378,
"delta": -0.0059,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7093,
"after": 1.6589,
"delta": -0.0504,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.0478,
"after": 0.0461,
"delta": -0.0017,
"percent_delta": -0.0356,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3213,
"after": 0.3188,
"delta": -0.0025,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.9913,
"after": 0.9439,
"delta": -0.0474,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3754,
"after": 0.3575,
"delta": -0.0179,
"percent_delta": -0.0477,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3177,
"after": 0.2928,
"delta": -0.0249,
"percent_delta": -0.0784,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8281,
"after": 0.8333,
"delta": 0.0052,
"percent_delta": 0.0063,
"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.7093,
"after": 1.6589,
"delta": -0.0504,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.21), rates preserved: AVG=0.230 HR/AB=0.006",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3125,
"after": 0.0,
"delta": -0.3125,
"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": 7.2078,
"after": 7.0,
"delta": -0.2078,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9378,
"after": 1.0,
"delta": 0.0622,
"percent_delta": 0.0663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6589,
"after": 2.0,
"delta": 0.3411,
"percent_delta": 0.2056,
"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.0461,
"after": 0.0,
"delta": -0.0461,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3575,
"after": 0.0,
"delta": -0.3575,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8333,
"after": 1.0,
"delta": 0.1667,
"percent_delta": 0.2,
"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": 1.6589,
"after": 2.0,
"delta": 0.3411,
"percent_delta": 0.2056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3575,
"after": 0.0,
"delta": -0.3575,
"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": 7.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": 7.0,
"after": 7.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": 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_R",
"before": 0.9439,
"after": 1.0,
"delta": 0.0561,
"percent_delta": 0.0594,
"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.9439,
"after": 1.0,
"delta": 0.0561,
"percent_delta": 0.0594,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2302,
"after": 0.286,
"delta": 0.0558,
"percent_delta": 0.2424,
"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": 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_OBP",
"before": 0.3188,
"after": 0.375,
"delta": 0.0562,
"percent_delta": 0.1763,
"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.2928,
"after": 0.286,
"delta": -0.0068,
"percent_delta": -0.0232,
"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.3188,
"after": 0.375,
"delta": 0.0562,
"percent_delta": 0.1763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2928,
"after": 0.286,
"delta": -0.0068,
"percent_delta": -0.0232,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 0,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2302,
"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.3188,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2928,
"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.286,
"after": 0.2302,
"delta": -0.0558,
"percent_delta": -0.1953,
"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.375,
"after": 0.3188,
"delta": -0.0562,
"percent_delta": -0.1499,
"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.286,
"after": 0.2928,
"delta": 0.0068,
"percent_delta": 0.0237,
"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.286,
"after": 0.2928,
"delta": 0.0068,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3188,
"delta": -0.0562,
"percent_delta": -0.1499,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.772,
"after": 4.0,
"delta": 0.228,
"percent_delta": 0.0604,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2302,
"delta": -0.0128,
"percent_delta": -0.0527,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.641,
"after": 0.0,
"delta": -0.641,
"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.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.324,
"after": 0.3188,
"delta": -0.0052,
"percent_delta": -0.016,
"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.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.335,
"after": 0.2928,
"delta": -0.0422,
"percent_delta": -0.126,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.494,
"after": 0.0,
"delta": -0.494,
"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": 3.772,
"after": 4.0,
"delta": 0.228,
"percent_delta": 0.0604,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.641,
"after": 0.0,
"delta": -0.641,
"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.156 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.772 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.641 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.324 | - |
| predicted_R | 0.544 | - |
| predicted_RBI | 0.260 | - |
| predicted_SLG | 0.335 | - |
| predicted_SO | 0.494 | - |
Final model 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.312 | 0.157 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.208 | 3.436 |
| predicted_AVG | 0.242 | -0.001 |
| predicted_BB | 0.944 | 0.303 |
| predicted_H | 1.709 | 0.839 |
| predicted_HBP | 0.054 | - |
| predicted_HR | 0.048 | -0.002 |
| predicted_OBP | 0.321 | -0.003 |
| predicted_R | 0.991 | 0.447 |
| predicted_RBI | 0.375 | 0.115 |
| predicted_SLG | 0.318 | -0.017 |
| predicted_SO | 0.828 | 0.334 |
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.312 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.208 | 0.000 |
| predicted_AVG | 0.230 | -0.011 |
| predicted_BB | 0.938 | -0.006 |
| predicted_H | 1.659 | -0.050 |
| predicted_HBP | 0.054 | 0.000 |
| predicted_HR | 0.046 | -0.002 |
| predicted_OBP | 0.319 | -0.003 |
| predicted_R | 0.944 | -0.047 |
| predicted_RBI | 0.357 | -0.018 |
| predicted_SLG | 0.293 | -0.025 |
| predicted_SO | 0.833 | 0.005 |
AB rounded to 7 (raw=7.21), rates preserved: AVG=0.230 HR/AB=0.006
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.312 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.208 |
| predicted_AVG | 0.286 | 0.056 |
| predicted_BB | 1.000 | 0.062 |
| predicted_H | 2.000 | 0.341 |
| predicted_HR | 0.000 | -0.046 |
| predicted_OBP | 0.375 | 0.056 |
| predicted_R | 1.000 | 0.056 |
| predicted_RBI | 0.000 | -0.357 |
| predicted_SLG | 0.286 | -0.007 |
| 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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | - | 17.000 | 5.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 0.000 | 1.000 | 0.2941 | 0.2941 | 0.3529 | 0.2941 | 0.0000 | 0.0000 | 0.0000 | 0.0588 |
| last_10 | 0.20 | 7 | - | 37.000 | 11.000 | 1.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.000 | 1.000 | 0.2973 | 0.2973 | 0.3243 | 0.2973 | 0.0000 | 0.0000 | 0.0000 | 0.0270 |
| season | 0.60 | 58 | - | 894.000 | 191.000 | 37.000 | 0.000 | 4.000 | 56.000 | 129.000 | 152.000 | 117.000 | 0.2136 | 0.3289 | 0.2685 | 0.2137 | 0.0045 | 0.0626 | 0.1700 | 0.1309 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5100 |
| predicted_3B | 0.0010 |
| predicted_AB | 11.5460 |
| predicted_AVG | 0.2398 |
| predicted_BB | 1.3260 |
| predicted_H | 2.7690 |
| predicted_HBP | 0.0540 |
| predicted_HR | 0.0450 |
| predicted_OBP | 0.3180 |
| predicted_R | 1.5560 |
| predicted_RBI | 0.5210 |
| predicted_SLG | 0.2959 |
| predicted_SO | 1.2500 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1560 | 0.5100 | 0.3125 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7720 | 11.5460 | 7.2078 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2398 | 0.2416 | model_form_blend |
| predicted_BB | 0.6410 | 1.3260 | 0.9437 | model_form_blend |
| predicted_H | 0.8700 | 2.7690 | 1.7093 | model_form_blend |
| predicted_HBP | - | 0.0540 | 0.0540 | form_only |
| predicted_HR | 0.0500 | 0.0450 | 0.0478 | model_form_blend |
| predicted_OBP | 0.3240 | 0.3180 | 0.3213 | model_form_blend |
| predicted_R | 0.5440 | 1.5560 | 0.9913 | model_form_blend |
| predicted_RBI | 0.2600 | 0.5210 | 0.3754 | model_form_blend |
| predicted_SLG | 0.3350 | 0.2959 | 0.3177 | model_form_blend |
| predicted_SO | 0.4940 | 1.2500 | 0.8281 | 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 | 237 |
| 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.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 | 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 | 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 | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 680757 |
| playerID | 680757 |
| playerName | Steven Kwan |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 10.2 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.283 |
| sl_xwoba | 0.299 |
| sl_xba | 0.24 |
| sl_xslg | 0.301 |
| sl_sweet_spot_percent | 37.8 |
| sl_barrel_batted_rate | 0.5 |
| sl_hard_hit_percent | 8.9 |
| sl_exit_velocity_avg | 82.8 |
| sl_launch_angle_avg | 15.2 |
| sl_whiff_percent | 7.6 |
| sl_swing_percent | 35.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.146 | 0.000 | 0.000 | Hitting_2B | 0.146 | 0.000 | -0.146 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 3.349 | 3.000 | 5.000 | Hitting_AB | 3.349 | 2.000 | -0.349 | 1.000 |
| predicted_AVG | 0.242 | 0.000 | 0.200 | Hitting_AVG | 0.296 | 0.000 | -0.296 | 0.000 |
| predicted_BB | 0.330 | 0.000 | 0.000 | Hitting_BB | 0.330 | 1.000 | -0.330 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.057 | 0.000 | -0.057 | 0.000 |
| predicted_H | 0.720 | 0.000 | 1.000 | Hitting_H | 0.991 | 0.000 | -0.991 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_OBP | 0.299 | 0.250 | 0.200 | Hitting_OBP | 0.373 | 0.333 | -0.123 | -0.083 |
| predicted_R | 0.462 | 0.000 | 1.000 | Hitting_R | 0.462 | 0.000 | -0.462 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 1.000 | Hitting_RBI | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_SLG | 0.375 | 0.000 | 0.200 | Hitting_SLG | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_SO | 0.429 | 0.000 | 1.000 | Hitting_SO | 0.429 | 0.000 | -0.429 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 11 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | - |
| 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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.3490 -> 5.3706 (boost 2.0216, 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.3751 -> 0.3565 (deboost -0.0186, 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.5664 -> 1.0000 (boost 0.4336, better) | predicted_BB: 0.4711 -> 0.0000 (deboost -0.4711, worse) | AB rounded to 5 (raw=5.37), rates preserved: AVG=0.223 HR/AB=0.028 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6236 -> 1.0000 (boost 0.3764, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3565 -> 0.2000 (deboost -0.1565, 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_HBP: 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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.3565 (boost 0.1565, better) | - | 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.146,
"predicted_3B": 0.019,
"predicted_AB": 3.349,
"predicted_AVG": 0.242,
"predicted_BB": 0.33,
"predicted_H": 0.72,
"predicted_HR": 0.09,
"predicted_OBP": 0.299,
"predicted_R": 0.462,
"predicted_RBI": 0.35,
"predicted_SLG": 0.375,
"predicted_SO": 0.429
},
"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.2172,
"predicted_3B": 0.0225,
"predicted_AB": 5.3706,
"predicted_AVG": 0.2402,
"predicted_BB": 0.4741,
"predicted_H": 1.2346,
"predicted_HBP": 0.179,
"predicted_HR": 0.1572,
"predicted_OBP": 0.3021,
"predicted_R": 0.6549,
"predicted_RBI": 0.5948,
"predicted_SLG": 0.3751,
"predicted_SO": 0.7287
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.146,
"after": 0.2172,
"delta": 0.0712,
"percent_delta": 0.4877,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0225,
"delta": 0.0035,
"percent_delta": 0.1842,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.349,
"after": 5.3706,
"delta": 2.0216,
"percent_delta": 0.6036,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2402,
"delta": -0.0018,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.33,
"after": 0.4741,
"delta": 0.1441,
"percent_delta": 0.4367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 1.2346,
"delta": 0.5146,
"percent_delta": 0.7147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1572,
"delta": 0.0672,
"percent_delta": 0.7467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.3021,
"delta": 0.0031,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 0.6549,
"delta": 0.1929,
"percent_delta": 0.4175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.5948,
"delta": 0.2448,
"percent_delta": 0.6994,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.3751,
"delta": 0.0001,
"percent_delta": 0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.429,
"after": 0.7287,
"delta": 0.2997,
"percent_delta": 0.6986,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.349,
"after": 5.3706,
"delta": 2.0216,
"percent_delta": 0.6036,
"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": 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.2172,
"predicted_3B": 0.0225,
"predicted_AB": 5.3706,
"predicted_AVG": 0.2231,
"predicted_BB": 0.4711,
"predicted_H": 1.1982,
"predicted_HBP": 0.179,
"predicted_HR": 0.1514,
"predicted_OBP": 0.2858,
"predicted_R": 0.6236,
"predicted_RBI": 0.5664,
"predicted_SLG": 0.3565,
"predicted_SO": 0.7333
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2172,
"after": 0.2172,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0225,
"after": 0.0225,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3706,
"after": 5.3706,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2402,
"after": 0.2231,
"delta": -0.0171,
"percent_delta": -0.0712,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4741,
"after": 0.4711,
"delta": -0.003,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2346,
"after": 1.1982,
"delta": -0.0364,
"percent_delta": -0.0295,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.179,
"after": 0.179,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1572,
"after": 0.1514,
"delta": -0.0058,
"percent_delta": -0.0369,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3021,
"after": 0.2858,
"delta": -0.0163,
"percent_delta": -0.054,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6549,
"after": 0.6236,
"delta": -0.0313,
"percent_delta": -0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5948,
"after": 0.5664,
"delta": -0.0284,
"percent_delta": -0.0477,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3751,
"after": 0.3565,
"delta": -0.0186,
"percent_delta": -0.0496,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7287,
"after": 0.7333,
"delta": 0.0046,
"percent_delta": 0.0063,
"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.3751,
"after": 0.3565,
"delta": -0.0186,
"percent_delta": -0.0496,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.37), rates preserved: AVG=0.223 HR/AB=0.028",
"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.2172,
"after": 0.0,
"delta": -0.2172,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0225,
"after": 0.0,
"delta": -0.0225,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3706,
"after": 5.0,
"delta": -0.3706,
"percent_delta": -0.069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4711,
"after": 0.0,
"delta": -0.4711,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1982,
"after": 1.0,
"delta": -0.1982,
"percent_delta": -0.1654,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.179,
"after": 0.0,
"delta": -0.179,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1514,
"after": 0.0,
"delta": -0.1514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5664,
"after": 1.0,
"delta": 0.4336,
"percent_delta": 0.7655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7333,
"after": 1.0,
"delta": 0.2667,
"percent_delta": 0.3637,
"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.5664,
"after": 1.0,
"delta": 0.4336,
"percent_delta": 0.7655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4711,
"after": 0.0,
"delta": -0.4711,
"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.6236,
"after": 1.0,
"delta": 0.3764,
"percent_delta": 0.6036,
"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.6236,
"after": 1.0,
"delta": 0.3764,
"percent_delta": 0.6036,
"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.2231,
"after": 0.2,
"delta": -0.0231,
"percent_delta": -0.1035,
"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.2858,
"after": 0.2,
"delta": -0.0858,
"percent_delta": -0.3002,
"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.3565,
"after": 0.2,
"delta": -0.1565,
"percent_delta": -0.439,
"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.3565,
"after": 0.2,
"delta": -0.1565,
"percent_delta": -0.439,
"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": 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": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"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": 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": 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_HBP",
"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": 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.2231,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2858,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3565,
"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": 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.2231,
"delta": 0.0231,
"percent_delta": 0.1155,
"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": 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.2,
"after": 0.2858,
"delta": 0.0858,
"percent_delta": 0.4288,
"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.3565,
"delta": 0.1565,
"percent_delta": 0.7826,
"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.3565,
"delta": 0.1565,
"percent_delta": 0.7826,
"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.146,
"after": 0.0,
"delta": -0.146,
"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": 3.349,
"after": 3.0,
"delta": -0.349,
"percent_delta": -0.1042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2231,
"delta": -0.0189,
"percent_delta": -0.0781,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2858,
"delta": -0.0132,
"percent_delta": -0.0441,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 0.0,
"delta": -0.462,
"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.375,
"after": 0.3565,
"delta": -0.0185,
"percent_delta": -0.0493,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.429,
"after": 0.0,
"delta": -0.429,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 0,
"deboosted_metrics": 11,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": null,
"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.146 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 3.349 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.330 | - |
| predicted_H | 0.720 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.462 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.375 | - |
| predicted_SO | 0.429 | - |
Final model 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.217 | 0.071 |
| predicted_3B | 0.022 | 0.003 |
| predicted_AB | 5.371 | 2.022 |
| predicted_AVG | 0.240 | -0.002 |
| predicted_BB | 0.474 | 0.144 |
| predicted_H | 1.235 | 0.515 |
| predicted_HBP | 0.179 | - |
| predicted_HR | 0.157 | 0.067 |
| predicted_OBP | 0.302 | 0.003 |
| predicted_R | 0.655 | 0.193 |
| predicted_RBI | 0.595 | 0.245 |
| predicted_SLG | 0.375 | 0.000 |
| predicted_SO | 0.729 | 0.300 |
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.217 | 0.000 |
| predicted_3B | 0.022 | 0.000 |
| predicted_AB | 5.371 | 0.000 |
| predicted_AVG | 0.223 | -0.017 |
| predicted_BB | 0.471 | -0.003 |
| predicted_H | 1.198 | -0.036 |
| predicted_HBP | 0.179 | 0.000 |
| predicted_HR | 0.151 | -0.006 |
| predicted_OBP | 0.286 | -0.016 |
| predicted_R | 0.624 | -0.031 |
| predicted_RBI | 0.566 | -0.028 |
| predicted_SLG | 0.356 | -0.019 |
| predicted_SO | 0.733 | 0.005 |
AB rounded to 5 (raw=5.37), rates preserved: AVG=0.223 HR/AB=0.028
| 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.217 |
| predicted_3B | 0.000 | -0.022 |
| predicted_AB | 5.000 | -0.371 |
| predicted_AVG | 0.200 | -0.023 |
| predicted_BB | 0.000 | -0.471 |
| predicted_H | 1.000 | -0.198 |
| predicted_HR | 0.000 | -0.151 |
| predicted_OBP | 0.200 | -0.086 |
| predicted_R | 1.000 | 0.376 |
| predicted_RBI | 1.000 | 0.434 |
| predicted_SLG | 0.200 | -0.156 |
| predicted_SO | 1.000 | 0.267 |
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 | 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 | -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 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 1.000 | 2.000 | 0.1176 | 0.1667 | 0.2941 | 0.1177 | 0.0588 | 0.0588 | 0.0588 | 0.1177 |
| last_10 | 0.20 | 10 | - | 33.000 | 6.000 | 2.000 | 0.000 | 1.000 | 2.000 | 3.000 | 2.000 | 6.000 | 0.1818 | 0.2432 | 0.3333 | 0.1818 | 0.0303 | 0.0606 | 0.0606 | 0.1818 |
| season | 0.60 | 63 | - | 710.000 | 210.000 | 31.000 | 4.000 | 15.000 | 106.000 | 98.000 | 70.000 | 91.000 | 0.2958 | 0.3731 | 0.4141 | 0.2958 | 0.0211 | 0.1493 | 0.0986 | 0.1282 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3080 |
| predicted_3B | 0.0270 |
| predicted_AB | 7.9490 |
| predicted_AVG | 0.2378 |
| predicted_BB | 0.6580 |
| predicted_H | 1.8910 |
| predicted_HBP | 0.1790 |
| predicted_HR | 0.2430 |
| predicted_OBP | 0.3061 |
| predicted_R | 0.9010 |
| predicted_RBI | 0.9070 |
| predicted_SLG | 0.3752 |
| predicted_SO | 1.1110 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1460 | 0.3080 | 0.2172 | model_form_blend |
| predicted_3B | 0.0190 | 0.0270 | 0.0225 | model_form_blend |
| predicted_AB | 3.3490 | 7.9490 | 5.3706 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2378 | 0.2402 | model_form_blend |
| predicted_BB | 0.3300 | 0.6580 | 0.4741 | model_form_blend |
| predicted_H | 0.7200 | 1.8910 | 1.2346 | model_form_blend |
| predicted_HBP | - | 0.1790 | 0.1790 | form_only |
| predicted_HR | 0.0900 | 0.2430 | 0.1572 | model_form_blend |
| predicted_OBP | 0.2990 | 0.3061 | 0.3021 | model_form_blend |
| predicted_R | 0.4620 | 0.9010 | 0.6549 | model_form_blend |
| predicted_RBI | 0.3500 | 0.9070 | 0.5948 | model_form_blend |
| predicted_SLG | 0.3750 | 0.3752 | 0.3751 | model_form_blend |
| predicted_SO | 0.4290 | 1.1110 | 0.7287 | 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 | 212 |
| 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 | 0 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.296 |
| 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 | 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 | 20260607_CLE@TEX |
| game_type | full |
| mlbID | 677587 |
| playerID | 677587 |
| playerName | Brayan Rocchio |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-07 |
| sl_k_percent | 12.2 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.344 |
| sl_xwoba | 0.319 |
| sl_xba | 0.256 |
| sl_xslg | 0.37 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 3.4 |
| sl_hard_hit_percent | 32.8 |
| sl_exit_velocity_avg | 86.8 |
| sl_launch_angle_avg | 12.0 |
| sl_whiff_percent | 23.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_BB | 5.000 | 5.000 | 5.000 | Pitching_BB | 1.923 | 1.000 | 3.077 | 4.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.231 | 3.000 | -1.231 | -2.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 4.846 | 4.000 | -2.846 | -2.000 |
| predicted_IP | 6.100 | 6.100 | 6.100 | Pitching_InningsPitched | 6.192 | 5.100 | -0.092 | 1.000 |
| predicted_SO | 7.000 | 7.000 | 7.000 | Pitching_SO | 7.231 | 6.000 | -0.231 | 1.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: 4.0000 -> 7.0000 (boost 3.0000, better) |
| Biggest Deboost | predicted_IP: 6.3333 -> 6.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_guardrail | 2 | 1 | 1 | 1 | 1 | predicted_SO: 4.0000 -> 7.0000 (boost 3.0000, better) | predicted_IP: 6.3333 -> 6.1000 (deboost -0.2333, 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": "668909",
"player_name": "Gavin Williams",
"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": 5.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 6.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": "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": 5.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 6.1,
"predicted_SO": 7.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 5.0,
"after": 5.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": 6.3333,
"after": 6.1,
"delta": -0.2333,
"percent_delta": -0.0368,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 7.0,
"delta": 3.0,
"percent_delta": 0.75,
"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": 4.0,
"after": 7.0,
"delta": 3.0,
"percent_delta": 0.75,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 6.3333,
"after": 6.1,
"delta": -0.2333,
"percent_delta": -0.0368,
"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": 5.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 6.1,
"predicted_R": 1.0,
"predicted_SO": 7.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 5.0,
"after": 5.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": 6.1,
"after": 6.1,
"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": 5.0,
"after": 5.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": 6.3333,
"after": 6.1,
"delta": -0.2333,
"percent_delta": -0.0368,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 7.0,
"delta": 3.0,
"percent_delta": 0.75,
"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": 4.0,
"after": 7.0,
"delta": 3.0,
"percent_delta": 0.75,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 6.3333,
"after": 6.1,
"delta": -0.2333,
"percent_delta": -0.0368,
"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 | 5.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 6.333 | - |
| predicted_SO | 4.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 | 5.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 2.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 6.100 | -0.233 |
| predicted_SO | 7.000 | 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 | 32.100 | 11.000 | 30.000 | 4.000 | 34.000 | 3.000 | 3.0619 | 1.0515 | 0.3402 | 0.9278 | 0.1237 | 1.0515 | 0.0928 |
| last_10 | 0.35 | 10 | 64.000 | 25.000 | 58.000 | 11.000 | 69.000 | 9.000 | 3.5156 | 1.0781 | 0.3906 | 0.9062 | 0.1719 | 1.0781 | 0.1406 |
| season | 0.20 | 13 | 81.200 | 29.000 | 63.000 | 25.000 | 94.000 | 11.000 | 3.1959 | 1.0776 | 0.3551 | 0.7714 | 0.3061 | 1.1510 | 0.1347 |
| Metric | Value |
|---|---|
| predicted_BB | 1.4510 |
| predicted_ER | 2.5030 |
| predicted_ERA | 3.5575 |
| predicted_H | 5.7510 |
| predicted_HR | 0.7840 |
| predicted_IP | 6.1000 |
| predicted_SO | 6.5870 |
| predicted_WHIP | 1.1371 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 5.0000 | 1.4510 | 3.1097 | model_form_blend |
| predicted_ER | 1.0000 | 2.5030 | 1.8005 | model_form_blend |
| predicted_ERA | - | 3.5575 | 3.5575 | form_only |
| predicted_H | 2.0000 | 5.7510 | 3.9979 | model_form_blend |
| predicted_HR | 0.0000 | 0.7840 | 0.4176 | model_form_blend |
| predicted_IP | 6.1000 | 6.1000 | 6.1000 | model_form_blend |
| predicted_SO | 4.0000 | 6.5870 | 5.3779 | model_form_blend |
| predicted_WHIP | - | 1.1371 | 1.1371 | 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 | 6.1 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 5 |
| SO | 7 |
| HR | 0 |
| BF | 26 |
| Pitches | 107 |
| 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.20 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 6 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.1 |
| Pitching_Pitches | 96 |
| Pitching_R | 3 |
| Pitching_SO | 6 |
| Pitching_Strikes | 64 |
| Pitching_Wild Pitch | 1 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260603_CLE@NYY |
| game_type | full |
| mlbID | 668909 |
| playerID | 668909 |
| playerName | Gavin Williams |
| pos | P |
| started | True |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-03 |
| sl_k_percent | 29.0 |
| sl_bb_percent | 7.7 |
| sl_woba | 0.294 |
| sl_xwoba | 0.323 |
| sl_sweet_spot_percent | 33.5 |
| sl_barrel_batted_rate | 12.7 |
| sl_hard_hit_percent | 48.2 |
| sl_whiff_percent | 30.9 |
| sl_swing_percent | 49.4 |
| sl_avg_best_speed | 80.090900612 |
| sl_avg_hyper_speed | 95.731734847 |
| 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.179 | 0.000 | 0.821 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.321 | 1.000 | 0.679 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.929 | 1.000 | 0.071 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.007 | 1.000 | -0.007 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.536 | 1.000 | -1.536 | -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": "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": 1.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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 1.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": 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.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": 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.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 | 1.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.000 | 2.000 | 4.000 | 0.000 | 8.000 | 0.000 | 3.6000 | 0.8000 | 0.4000 | 0.8000 | 0.0000 | 1.6000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 2.000 | 7.000 | 1.000 | 19.000 | 0.000 | 1.7419 | 0.7742 | 0.1935 | 0.6774 | 0.0968 | 1.8387 | 0.0000 |
| season | 0.20 | 28 | 28.200 | 9.000 | 26.000 | 5.000 | 43.000 | 1.000 | 2.8256 | 1.0814 | 0.3140 | 0.9070 | 0.1744 | 1.5000 | 0.0349 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2070 |
| predicted_ER | 0.3920 |
| predicted_ERA | 3.5305 |
| predicted_H | 0.8620 |
| predicted_HR | 0.0690 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.3220 |
| predicted_WHIP | 1.0699 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2070 | 0.6417 | model_form_blend |
| predicted_ER | 1.0000 | 0.3920 | 0.7253 | model_form_blend |
| predicted_ERA | - | 3.5305 | 3.5305 | form_only |
| predicted_H | 1.0000 | 0.8620 | 0.9376 | model_form_blend |
| predicted_HR | 0.0000 | 0.0690 | 0.0312 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.3220 | 1.1455 | model_form_blend |
| predicted_WHIP | - | 1.0699 | 1.0699 | 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 | 1 |
| R | 1 |
| ER | 1 |
| 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 | 4 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.83 |
| 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 | 11 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 1 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260603_CLE@NYY |
| game_type | full |
| mlbID | 671922 |
| playerID | 671922 |
| playerName | Cade Smith |
| pos | P |
| started | False |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-03 |
| sl_k_percent | 37.4 |
| sl_bb_percent | 4.3 |
| sl_woba | 0.266 |
| sl_xwoba | 0.247 |
| sl_sweet_spot_percent | 35.8 |
| sl_barrel_batted_rate | 9.2 |
| sl_hard_hit_percent | 43.1 |
| sl_whiff_percent | 36.2 |
| sl_swing_percent | 50.1 |
| sl_avg_best_speed | 82.190894848 |
| sl_avg_hyper_speed | 94.880142615 |
| 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.316 | 0.000 | -0.316 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.368 | 0.000 | -0.368 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.947 | 0.000 | -0.947 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.737 | 1.000 | 0.263 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.737 | 0.000 | -0.737 | 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": "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": 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": 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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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 | 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 | 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 | 10.000 | 1.000 | 8.000 | 1.000 | 7.000 | 0.000 | 0.9000 | 0.9000 | 0.1000 | 0.8000 | 0.1000 | 0.7000 | 0.0000 |
| season | 0.20 | 18 | 16.100 | 6.000 | 16.000 | 4.000 | 14.000 | 2.000 | 3.3061 | 1.2245 | 0.3674 | 0.9796 | 0.2449 | 0.8571 | 0.1225 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2540 |
| predicted_ER | 0.3370 |
| predicted_ERA | 3.0353 |
| predicted_H | 0.9010 |
| predicted_HR | 0.0940 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9300 |
| predicted_WHIP | 1.1555 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2540 | 0.0999 | model_form_blend |
| predicted_ER | 0.0000 | 0.3370 | 0.1325 | model_form_blend |
| predicted_ERA | - | 3.0353 | 3.0353 | form_only |
| predicted_H | 0.0000 | 0.9010 | 0.3542 | model_form_blend |
| predicted_HR | 0.0000 | 0.0940 | 0.0370 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9300 | 0.9725 | model_form_blend |
| predicted_WHIP | - | 1.1555 | 1.1555 | 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 | 18 |
| 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 | 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 | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.86 |
| Pitching_Flyouts | 3 |
| 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 | 15 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260603_CLE@NYY |
| game_type | full |
| mlbID | 683769 |
| playerID | 683769 |
| playerName | Hunter Gaddis |
| pos | P |
| started | False |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-03 |
| sl_k_percent | 18.9 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.317 |
| sl_xwoba | 0.291 |
| sl_sweet_spot_percent | 25.9 |
| sl_barrel_batted_rate | 7.4 |
| sl_hard_hit_percent | 29.6 |
| sl_whiff_percent | 30.2 |
| sl_swing_percent | 49.8 |
| sl_avg_best_speed | 78.093926667 |
| sl_avg_hyper_speed | 92.615930755 |
| 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.421 | 0.000 | -0.421 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.316 | 0.000 | -0.316 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.632 | 0.000 | 0.368 | 1.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.747 | 1.000 | -0.547 | -0.800 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.053 | 0.000 | -1.053 | 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.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": "542888",
"player_name": "Shawn Armstrong",
"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.6667,
"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.2,
"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.6667,
"after": 0.2,
"delta": -0.4667,
"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.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": 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": 0.2,
"delta": -0.4667,
"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.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 | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| 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 | 1.000 | 3.000 | 0.000 | 4.000 | 0.000 | 1.9286 | 0.6429 | 0.2143 | 0.6429 | 0.0000 | 0.8571 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 1.000 | 5.000 | 1.000 | 9.000 | 0.000 | 0.9643 | 0.6429 | 0.1071 | 0.5357 | 0.1071 | 0.9643 | 0.0000 |
| season | 0.20 | 18 | 17.000 | 3.000 | 12.000 | 6.000 | 20.000 | 2.000 | 1.5882 | 1.0588 | 0.1765 | 0.7059 | 0.3529 | 1.1765 | 0.1177 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2090 |
| predicted_ER | 0.2870 |
| predicted_ERA | 3.2224 |
| predicted_H | 0.6570 |
| predicted_HR | 0.0740 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7560 |
| predicted_WHIP | 1.0826 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2090 | 0.0830 | model_form_blend |
| predicted_ER | 0.0000 | 0.2870 | 0.1140 | model_form_blend |
| predicted_ERA | - | 3.2224 | 3.2224 | form_only |
| predicted_H | 1.0000 | 0.6570 | 0.8638 | model_form_blend |
| predicted_HR | 0.0000 | 0.0740 | 0.0294 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7560 | 0.3003 | model_form_blend |
| predicted_WHIP | - | 1.0826 | 1.0826 | 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 | 18 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| 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 | 3.18 |
| Pitching_Flyouts | 2 |
| 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 | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260605_CLE@TEX |
| game_type | full |
| mlbID | 542888 |
| playerID | 542888 |
| playerName | Shawn Armstrong |
| pos | P |
| started | False |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-05 |
| sl_k_percent | 28.6 |
| sl_bb_percent | 11.4 |
| sl_woba | 0.294 |
| sl_xwoba | 0.297 |
| sl_sweet_spot_percent | 34.1 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 41.5 |
| sl_whiff_percent | 28.7 |
| sl_swing_percent | 47.2 |
| sl_avg_best_speed | 78.198048095 |
| sl_avg_hyper_speed | 93.766822195 |
| 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.316 | 0.000 | -0.316 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.263 | 0.000 | -0.263 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.632 | 0.000 | 1.368 | 2.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 1.063 | 1.000 | -1.063 | -1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.421 | 2.000 | -1.421 | -2.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: 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 | 2 | 0 | 2 | 0 | 2 | - | 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": "670059",
"player_name": "Colin Holderman",
"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": 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": 0.0,
"predicted_H": 2.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": 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": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"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": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"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 | 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.200 | 2.000 | 3.000 | 1.000 | 6.000 | 0.000 | 3.8571 | 0.8571 | 0.4286 | 0.6429 | 0.2143 | 1.2857 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 3.000 | 6.000 | 3.000 | 13.000 | 0.000 | 2.8929 | 0.9643 | 0.3214 | 0.6429 | 0.3214 | 1.3929 | 0.0000 |
| season | 0.20 | 19 | 23.000 | 5.000 | 12.000 | 6.000 | 27.000 | 1.000 | 1.9565 | 0.7826 | 0.2174 | 0.5217 | 0.2609 | 1.1739 | 0.0435 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2150 |
| predicted_ER | 0.2870 |
| predicted_ERA | 3.7808 |
| predicted_H | 0.5430 |
| predicted_HR | 0.0530 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7570 |
| predicted_WHIP | 1.1115 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2150 | 0.0922 | model_form_blend |
| predicted_ER | 0.0000 | 0.2870 | 0.1230 | model_form_blend |
| predicted_ERA | - | 3.7808 | 3.7808 | form_only |
| predicted_H | 2.0000 | 0.5430 | 1.3755 | model_form_blend |
| predicted_HR | 0.0000 | 0.0530 | 0.0227 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.7570 | 0.8958 | model_form_blend |
| predicted_WHIP | - | 1.1115 | 1.1115 | 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 | 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 | 1.96 |
| 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 | 16 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260603_CLE@NYY |
| game_type | full |
| mlbID | 670059 |
| playerID | 670059 |
| playerName | Colin Holderman |
| pos | P |
| started | False |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-03 |
| sl_k_percent | 31.0 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.185 |
| sl_xwoba | 0.261 |
| sl_sweet_spot_percent | 27.8 |
| sl_barrel_batted_rate | 11.1 |
| sl_hard_hit_percent | 46.3 |
| sl_whiff_percent | 26.6 |
| sl_swing_percent | 44.9 |
| sl_avg_best_speed | 74.207637407 |
| sl_avg_hyper_speed | 94.435802593 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | PHI 4 - 1 TOR | PHI | 0.572 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | PHI 3 - 2 TOR | PHI | - | 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 | 6.7000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5722 |
| 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.871 | 3.855 | - | Base ML historical model prediction |
| 2 | variance_applied | 8 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 1 | 0.5722 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 4 | 1 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 4 | 1 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 3 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.5949623977695168,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.17209994423791825,
"confidence": 0.803494,
"factors": {
"environmental": 0.969,
"pitcher_form": 1.4520000000000002,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.4069880000000001
},
"prediction": "low_scoring",
"expected_total_runs": 5,
"pre_simulation_expected_total_runs": 6.7,
"low_score_model_expected_total_runs": 6.7,
"final_simulation_total_runs": 5,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 64,
"near_bucket_sample_size": 19,
"medium_bucket_sample_size": 64,
"wide_bucket_sample_size": 143,
"global_sample_size": 143,
"bucket_scope": "pooled_0.08",
"sparse_bucket": false,
"empirical_hit_rate": 0.5625,
"bayesian_hit_rate": 0.5488,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.7805,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6275,
"calibrated_pick_probability": 0.5722,
"predicted_side": "away"
}{
"applied": false,
"home": {
"team": "TOR",
"games": 66,
"wins": 32,
"losses": 34,
"win_pct": 0.48484848484848486,
"runs_scored": 272,
"runs_allowed": 285,
"run_differential": -13,
"run_differential_per_game": -0.19696969696969696,
"available": true
},
"away": {
"team": "PHI",
"games": 65,
"wins": 35,
"losses": 30,
"win_pct": 0.5384615384615384,
"runs_scored": 262,
"runs_allowed": 281,
"run_differential": -19,
"run_differential_per_game": -0.2923076923076923,
"available": true
},
"run_differential_edge_per_game": 0.0953,
"win_pct_edge": -0.0536,
"quality_edge": 0.0149,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "PHI",
"guardrail_predicted_team": "PHI",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "PHI",
"output_opponent_team": "TOR",
"final_score_winner": "PHI",
"pre_simulation_winner": "PHI",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "PHI 4 - 1 TOR",
"winner": "PHI"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "PHI 3 - 2 TOR",
"winner": "PHI"
},
"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": "TOR",
"games": 66,
"wins": 32,
"losses": 34,
"win_pct": 0.48484848484848486,
"runs_scored": 272,
"runs_allowed": 285,
"run_differential": -13,
"run_differential_per_game": -0.19696969696969696,
"available": true
},
"away": {
"team": "PHI",
"games": 65,
"wins": 35,
"losses": 30,
"win_pct": 0.5384615384615384,
"runs_scored": 262,
"runs_allowed": 281,
"run_differential": -19,
"run_differential_per_game": -0.2923076923076923,
"available": true
}
}
}{
"applied": true,
"raw_margin": -2.1773,
"final_margin": -1.5,
"margin_cap": 1.5,
"season_quality_edge": 0.0149,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 2.786,
"home_runs": 1.286
}
}{
"applied": false,
"raw_confidence": 0.572241,
"final_confidence": 0.572241,
"confidence_cap": 0.66,
"score_gap": 1.5,
"calibration_sample_size": 64,
"calibration_empirical_hit_rate": 0.5625,
"calibration_bayesian_hit_rate": 0.5488,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.0149,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is moderate",
"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": 1,
"score_text": "PHI 4 - 1 TOR",
"winner": "PHI"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "PHI 3 - 2 TOR",
"winner": "PHI"
},
"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": 4,
"home_runs": 1,
"confidence": 0.572241,
"home_win_probability": 0.427759,
"away_win_probability": 0.572241,
"predicted_score_text": "PHI 4 - 1 TOR",
"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": "PHI",
"original_runs": 3,
"run_delta": 0.756,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 56.0,
"quality": 0.3058428358708773,
"contact": 0.36242115924569457,
"power": 0.4492376250110075,
"discipline": -0.1274935671922646,
"xwoba": 0.33075000000000004,
"recent_xwoba": 0.33075000000000004,
"barrel": 9.280357142857143,
"ab_hard_contact": 0.3069191668868199,
"ab_bat_speed": 71.32076875638934,
"ab_strikeout_rate": 0.22405028802874724,
"available_players": 9,
"top_players": [
{
"player_id": "547180",
"player_name": "Bryce Harper",
"position": "1B",
"weight": 6.0,
"quality": 1.2842119390840714,
"contact": 1.265845268044324,
"power": 1.5168907176988045,
"discipline": 0.6680335263385576,
"xwoba": 0.413,
"recent_xwoba": 0.413,
"barrel": 13.9,
"ab_hard_contact": 1.5324810206427575,
"ab_bat_speed": 72.87975995807128,
"ab_strikeout_rate": 0.18731656184486373,
"available": 1.0
},
{
"player_id": "656941",
"player_name": "Kyle Schwarber",
"position": "DH",
"weight": 7.0,
"quality": 0.9868557589170376,
"contact": 0.6778958173090189,
"power": 1.8977296811049194,
"discipline": -0.062153574820241614,
"xwoba": 0.378,
"recent_xwoba": 0.378,
"barrel": 22.1,
"ab_hard_contact": 0.7105936220983975,
"ab_bat_speed": 74.57395451770452,
"ab_strikeout_rate": 0.33621794871794874,
"available": 1.0
},
{
"player_id": "669016",
"player_name": "Brandon Marsh",
"position": "CF",
"weight": 6.0,
"quality": 0.4693549512981739,
"contact": 0.9632337404202049,
"power": 0.6529734222528559,
"discipline": -0.47593902746283717,
"xwoba": 0.345,
"recent_xwoba": 0.345,
"barrel": 8.0,
"ab_hard_contact": 0.31280177839045603,
"ab_bat_speed": 70.35567857142857,
"ab_strikeout_rate": 0.2370748299319728,
"available": 1.0
},
{
"player_id": "607208",
"player_name": "Trea Turner",
"position": "SS",
"weight": 8.0,
"quality": -0.21066366162455732,
"contact": -0.22526653983383782,
"power": -0.2437090792219676,
"discipline": -0.323568715235382,
"xwoba": 0.29,
"recent_xwoba": 0.29,
"barrel": 5.4,
"ab_hard_contact": 0.03667555841779587,
"ab_bat_speed": 70.81053472222222,
"ab_strikeout_rate": 0.21591880341880343,
"available": 1.0
},
{
"player_id": "624641",
"player_name": "Edmundo Sosa",
"position": "LF",
"weight": 5.0,
"quality": 0.10666915610022489,
"contact": 0.35285609213428987,
"power": 0.2919745866171024,
"discipline": -0.7670078756917837,
"xwoba": 0.334,
"recent_xwoba": 0.334,
"barrel": 8.2,
"ab_hard_contact": -0.1144130295627097,
"ab_bat_speed": 71.75108100711549,
"ab_strikeout_rate": 0.21264367816091956,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "571578",
"player_name": "Patrick Corbin",
"quality": -0.6051014839690867,
"contact": -0.7184728932638781,
"command": -0.651573668012074,
"movement": -1.370406627527523,
"xwoba": 0.356,
"whiff": 19.2,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "TOR",
"original_runs": 1,
"run_delta": -0.3751,
"adjusted_runs": 1,
"lineup": {
"players_used": 9,
"total_weight": 51.0,
"quality": 0.05110243798192288,
"contact": 0.25652969455919383,
"power": 0.13902428400906602,
"discipline": 0.04659106079928612,
"xwoba": 0.32298039215686275,
"recent_xwoba": 0.32298039215686275,
"barrel": 7.970588235294117,
"ab_hard_contact": -0.23800171477666196,
"ab_bat_speed": 70.90987118363435,
"ab_strikeout_rate": 0.1918736485412401,
"available_players": 8,
"top_players": [
{
"player_id": "665489",
"player_name": "Vladimir Guerrero Jr.",
"position": "1B",
"weight": 6.0,
"quality": 0.8142759817804645,
"contact": 1.2335467746171718,
"power": 0.33589091936049037,
"discipline": 0.963999683870753,
"xwoba": 0.36,
"recent_xwoba": 0.36,
"barrel": 6.8,
"ab_hard_contact": 0.6957231491145732,
"ab_bat_speed": 75.4817074722971,
"ab_strikeout_rate": 0.11320754716981132,
"available": 1.0
},
{
"player_id": "676391",
"player_name": "Ernie Clement",
"position": "SS",
"weight": 7.0,
"quality": -0.5916163792080881,
"contact": -0.3928133711885936,
"power": -0.8887501037364189,
"discipline": 0.06994316177649501,
"xwoba": 0.278,
"recent_xwoba": 0.278,
"barrel": 2.6,
"ab_hard_contact": -0.23824016996647315,
"ab_bat_speed": 65.85213734567901,
"ab_strikeout_rate": 0.08212121212121212,
"available": 1.0
},
{
"player_id": "672960",
"player_name": "Kazuma Okamoto",
"position": "3B",
"weight": 7.0,
"quality": 0.4621805791155373,
"contact": 0.2250133792892305,
"power": 1.1188425770534425,
"discipline": -0.5806849522478454,
"xwoba": 0.33,
"recent_xwoba": 0.33,
"barrel": 14.6,
"ab_hard_contact": 0.4541848744021726,
"ab_bat_speed": 71.33991614255766,
"ab_strikeout_rate": 0.3113207547169811,
"available": 1.0
},
{
"player_id": "678218",
"player_name": "Brandon Valenzuela",
"position": "C",
"weight": 5.0,
"quality": 0.23990337564914974,
"contact": 0.5601163229943065,
"power": 0.6077269357400673,
"discipline": 0.3354691358024692,
"xwoba": 0.355,
"recent_xwoba": 0.355,
"barrel": 10.1,
"ab_hard_contact": 0.11187204813467644,
"ab_bat_speed": 70.44916232638889,
"ab_strikeout_rate": 0.22916666666666666,
"available": 1.0
},
{
"player_id": "807727",
"player_name": "Charles McAdoo",
"position": "2B",
"weight": 4.0,
"quality": 0.0,
"contact": 1.3523142857142858,
"power": 1.2335428571428573,
"discipline": -0.8700000000000001,
"xwoba": 0.373,
"recent_xwoba": 0.373,
"barrel": 11.1,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26396983685248,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "650911",
"player_name": "Cristopher Sánchez",
"quality": 0.6819003990335804,
"contact": 0.7506492560996136,
"command": 0.8165691891307832,
"movement": 0.5063243819343949,
"xwoba": 0.267,
"whiff": 33.4,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"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": 1,
"predicted_score_text": "PHI 4 - 1 TOR",
"confidence": 0.572241,
"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": 1,
"score_text": "PHI 4 - 1 TOR",
"winner": "PHI"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "PHI 3 - 2 TOR",
"winner": "PHI"
},
"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 PHI | True | 1.0382 | 1.0382 | 1 | 9 | 0 |
| Home TOR | 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Kyle Schwarber | 46 | 1.1035 | 1.3803 | neutral | 0.3780 | 0.2350 | 0.5300 | 22.10 | 50.70 | 93.10 | 21.70 | 33.70 | 34.10 | 14.30 | -0.6571 |
| 3B | Alec Bohm | 476 | 0.9977 | -0.0310 | neutral | 0.2950 | 0.2440 | 0.3540 | 3.70 | 42.40 | 90.50 | 11.10 | 17.10 | 14.30 | 6.90 | 0.2857 |
| SS | Trea Turner | 205 | 0.9913 | -0.1155 | neutral | 0.2900 | 0.2410 | 0.3640 | 5.40 | 40.10 | 89.30 | 10.60 | 26.50 | 21.60 | 6.70 | 0.2857 |
| 1B | Bryce Harper | 87 | 1.1276 | 1.7016 | positive_batter_regression | 0.4130 | 0.2900 | 0.5690 | 13.90 | 43.90 | 89.80 | 12.50 | 29.10 | 18.60 | 14.50 | 1 |
| C | J.T. Realmuto | 156 | 1.0197 | 0.2632 | positive_batter_regression | 0.3270 | 0.2560 | 0.3900 | 4.50 | 42.30 | 89 | 10.90 | 22.90 | 17.80 | 8.30 | 1.3714 |
| 2B | Bryson Stott | 480 | 1.0156 | 0.2085 | neutral | 0.3060 | 0.2490 | 0.3990 | 7.80 | 40.70 | 89.90 | 16.20 | 17.50 | 17.30 | 6.40 | 0.6286 |
| LF | Edmundo Sosa | 428 | 1.0266 | 0.3544 | positive_batter_regression | 0.3340 | 0.2850 | 0.4570 | 8.20 | 39.70 | 87.30 | 9.40 | 24.40 | 23.30 | 2.90 | 2 |
| RF | Adolis García | 518 | 1.0109 | 0.1453 | neutral | 0.2950 | 0.2220 | 0.3610 | 8.90 | 47.30 | 92 | 14.90 | 34 | 31.50 | 8.10 | 0.6857 |
| CF | Brandon Marsh | 37 | 1.0506 | 0.6744 | negative_batter_regression | 0.3450 | 0.3040 | 0.4690 | 8 | 47.60 | 90.50 | 12.80 | 22.50 | 22.80 | 4.80 | -1.1143 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CF | Daulton Varsho | 95 | 0.9903 | -0.1288 | neutral | 0.3040 | 0.2520 | 0.3600 | 6 | 38.30 | 86 | 13.70 | 20.50 | 19.10 | 9.30 | -0.6000 |
| 1B | Vladimir Guerrero Jr. | 140 | 1.0731 | 0.9741 | neutral | 0.3600 | 0.3050 | 0.4280 | 6.80 | 44.90 | 90.60 | 8.90 | 19.60 | 10 | 11.90 | 0.7143 |
| DH | George Springer | 482 | 0.9973 | -0.0360 | neutral | 0.3010 | 0.2240 | 0.3720 | 8 | 37 | 87.80 | 14.40 | 24.30 | 18.30 | 9.10 | 0.3429 |
| 3B | Kazuma Okamoto | 129 | 1.0515 | 0.6868 | neutral | 0.3300 | 0.2270 | 0.4440 | 14.60 | 51 | 92.40 | 16.80 | 33.70 | 31.90 | 9.50 | -0.0286 |
| C | Brandon Valenzuela | 107 | 1.0306 | 0.4082 | neutral | 0.3550 | 0.2630 | 0.4610 | 10.10 | 40.40 | 89.90 | 16.70 | 25.40 | 22.20 | 11.90 | -0.1429 |
| RF | Myles Straw | 442 | 0.9988 | -0.0155 | neutral | 0.3080 | 0.2630 | 0.3650 | 4.80 | 27.40 | 86.60 | 16 | 14.30 | 16.10 | 8.90 | 0.7143 |
| LF | Yohendrick Pinango | 305 | 1.0157 | 0.2088 | neutral | 0.3260 | 0.2850 | 0.4340 | 7.60 | 43 | 91.40 | 10.10 | 25.60 | 22.20 | 4.60 | -0.6000 |
| SS | Ernie Clement | 93 | 0.9429 | -0.7612 | negative_batter_regression | 0.2780 | 0.2610 | 0.3560 | 2.60 | 25.80 | 85.70 | 15.30 | 15.10 | 9.20 | 3.10 | -1.8571 |
| 2B | Charles McAdoo | 270 | 1.0502 | 0.6696 | neutral | 0.3730 | 0.3170 | 0.5450 | 11.10 | 55.60 | 90.20 | 17.40 | 26.30 | 18.20 | 0 | 0.6286 |
{
"home": {
"applied": true,
"offense_factor": 1.0167,
"raw_average_factor": 1.0167,
"team_espn_average_rank": 229.22,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "CF",
"player_id": "662139",
"player_name": "Daulton Varsho",
"offense_factor": 0.9903,
"quality_score": -0.1288,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "662139",
"espn_id": 40963,
"player_name": "Daulton Varsho",
"team": "TOR",
"role": "batter",
"espn_rank": 95,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 95,
"gp_value": 63.0,
"gp_rank": "50",
"ab_value": 211.0,
"ab_rank": "114",
"r_value": 26.0,
"r_rank": "121",
"h_value": 54.0,
"h_rank": "89",
"avg_value": 0.2559241,
"avg_rank": 72.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 17.0,
"rbi_rank": "216",
"tb_value": 86.0,
"tb_rank": "621",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 45.0,
"so_rank": "133",
"sb_value": 4.0,
"sb_rank": "108",
"obp_value": 0.3305084,
"obp_rank": "86",
"slg_value": 0.4075829,
"slg_rank": "94",
"ops_value": 0.7380913,
"ops_rank": 93.0,
"war_value": 1.23,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 208.0,
"k_percent": 19.1,
"bb_percent": 9.3,
"woba": 0.325,
"xwoba": 0.304,
"xba": 0.252,
"xslg": 0.36,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 6.0,
"hard_hit_percent": 38.3,
"exit_velocity_avg": 86.0,
"launch_angle_avg": 13.7,
"whiff_percent": 20.5,
"swing_percent": 52.5
},
"components": {
"expected_quality": -0.0607,
"regression_edge": -0.6,
"xwoba_edge": -0.0286,
"xba_edge": 0.3714,
"xslg_edge": -0.2,
"barrel_edge": -0.2222,
"hard_hit_edge": -0.0786,
"exit_velocity_edge": -1.12,
"sweet_spot_edge": 0.4333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "665489",
"player_name": "Vladimir Guerrero Jr.",
"offense_factor": 1.0731,
"quality_score": 0.9741,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665489",
"espn_id": 35002,
"player_name": "Vladimir Guerrero Jr.",
"team": "TOR",
"role": "batter",
"espn_rank": 140,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 140,
"gp_value": 64.0,
"gp_rank": "37",
"ab_value": 230.0,
"ab_rank": "67",
"r_value": 38.0,
"r_rank": "41",
"h_value": 66.0,
"h_rank": "28",
"avg_value": 0.2869565,
"avg_rank": 23.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 86.0,
"tb_rank": "1113",
"bb_value": 32.0,
"bb_rank": "35",
"so_value": 27.0,
"so_rank": "270",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3777777,
"obp_rank": "19",
"slg_value": 0.373913,
"slg_rank": "123",
"ops_value": 0.7516907,
"ops_rank": 85.0,
"war_value": 0.84,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 10.0,
"bb_percent": 11.9,
"woba": 0.335,
"xwoba": 0.36,
"xba": 0.305,
"xslg": 0.428,
"sweet_spot_percent": 30.0,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 44.9,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 8.9,
"whiff_percent": 19.6,
"swing_percent": 48.6
},
"components": {
"expected_quality": 1.0215,
"regression_edge": 0.7143,
"xwoba_edge": 1.5714,
"xba_edge": 1.8857,
"xslg_edge": 0.7714,
"barrel_edge": -0.0444,
"hard_hit_edge": 0.8643,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": -0.55,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "543807",
"player_name": "George Springer",
"offense_factor": 0.9973,
"quality_score": -0.036,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "543807",
"espn_id": 32078,
"player_name": "George Springer",
"team": "TOR",
"role": "batter",
"espn_rank": 482,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 482,
"gp_value": 45.0,
"gp_rank": "236",
"ab_value": 174.0,
"ab_rank": "173",
"r_value": 17.0,
"r_rank": "217",
"h_value": 36.0,
"h_rank": "197",
"avg_value": 0.2068965,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 14.0,
"rbi_rank": "247",
"tb_value": 61.0,
"tb_rank": "1115",
"bb_value": 18.0,
"bb_rank": "147",
"so_value": 36.0,
"so_rank": "192",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.2886597,
"obp_rank": "-",
"slg_value": 0.3505747,
"slg_rank": "-",
"ops_value": 0.6392344,
"ops_rank": null,
"war_value": -0.37,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 161.0,
"k_percent": 18.3,
"bb_percent": 9.1,
"woba": 0.289,
"xwoba": 0.301,
"xba": 0.224,
"xslg": 0.372,
"sweet_spot_percent": 30.4,
"barrel_batted_rate": 8.0,
"hard_hit_percent": 37.0,
"exit_velocity_avg": 87.8,
"launch_angle_avg": 14.4,
"whiff_percent": 24.3,
"swing_percent": 49.9
},
"components": {
"expected_quality": -0.1131,
"regression_edge": 0.3429,
"xwoba_edge": -0.1143,
"xba_edge": -0.4286,
"xslg_edge": -0.0286,
"barrel_edge": 0.2222,
"hard_hit_edge": -0.2643,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": -0.4833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "672960",
"player_name": "Kazuma Okamoto",
"offense_factor": 1.0515,
"quality_score": 0.6868,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672960",
"espn_id": 5134636,
"player_name": "Kazuma Okamoto",
"team": "TOR",
"role": "batter",
"espn_rank": 129,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 129,
"gp_value": 64.0,
"gp_rank": "37",
"ab_value": 234.0,
"ab_rank": "56",
"r_value": 32.0,
"r_rank": "67",
"h_value": 55.0,
"h_rank": "87",
"avg_value": 0.2350427,
"avg_rank": 118.0,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 13.0,
"hr_rank": "26",
"rbi_value": 37.0,
"rbi_rank": "34",
"tb_value": 101.0,
"tb_rank": "706",
"bb_value": 25.0,
"bb_rank": "69",
"so_value": 84.0,
"so_rank": "8",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3155893,
"obp_rank": "115",
"slg_value": 0.4316239,
"slg_rank": "73",
"ops_value": 0.7472132,
"ops_rank": 89.0,
"war_value": 0.92,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 222.0,
"k_percent": 31.9,
"bb_percent": 9.5,
"woba": 0.331,
"xwoba": 0.33,
"xba": 0.227,
"xslg": 0.444,
"sweet_spot_percent": 33.1,
"barrel_batted_rate": 14.6,
"hard_hit_percent": 51.0,
"exit_velocity_avg": 92.4,
"launch_angle_avg": 16.8,
"whiff_percent": 33.7,
"swing_percent": 44.8
},
"components": {
"expected_quality": 0.8032,
"regression_edge": -0.0286,
"xwoba_edge": 0.7143,
"xba_edge": -0.3429,
"xslg_edge": 1.0,
"barrel_edge": 1.6889,
"hard_hit_edge": 1.7357,
"exit_velocity_edge": 1.44,
"sweet_spot_edge": -0.0333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "678218",
"player_name": "Brandon Valenzuela",
"offense_factor": 1.0306,
"quality_score": 0.4082,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "678218",
"espn_id": 4918248,
"player_name": "Brandon Valenzuela",
"team": "TOR",
"role": "batter",
"espn_rank": 107,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 107,
"gp_value": 43.0,
"gp_rank": "250",
"ab_value": 117.0,
"ab_rank": "268",
"r_value": 17.0,
"r_rank": "217",
"h_value": 30.0,
"h_rank": "239",
"avg_value": 0.2564102,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": "242",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 7.0,
"hr_rank": "100",
"rbi_value": 16.0,
"rbi_rank": "231",
"tb_value": 56.0,
"tb_rank": "1135",
"bb_value": 16.0,
"bb_rank": "172",
"so_value": 30.0,
"so_rank": "239",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3432835,
"obp_rank": "-",
"slg_value": 0.4786324,
"slg_rank": "-",
"ops_value": 0.8219159,
"ops_rank": null,
"war_value": 1.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 105.0,
"k_percent": 22.2,
"bb_percent": 11.9,
"woba": 0.36,
"xwoba": 0.355,
"xba": 0.263,
"xslg": 0.461,
"sweet_spot_percent": 41.6,
"barrel_batted_rate": 10.1,
"hard_hit_percent": 40.4,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 16.7,
"whiff_percent": 25.4,
"swing_percent": 50.5
},
"components": {
"expected_quality": 1.0177,
"regression_edge": -0.1429,
"xwoba_edge": 1.4286,
"xba_edge": 0.6857,
"xslg_edge": 1.2429,
"barrel_edge": 0.6889,
"hard_hit_edge": 0.2214,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": 1.3833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "664702",
"player_name": "Myles Straw",
"offense_factor": 0.9988,
"quality_score": -0.0155,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664702",
"espn_id": 39105,
"player_name": "Myles Straw",
"team": "TOR",
"role": "batter",
"espn_rank": 442,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 442,
"gp_value": 56.0,
"gp_rank": "158",
"ab_value": 99.0,
"ab_rank": "295",
"r_value": 19.0,
"r_rank": "194",
"h_value": 23.0,
"h_rank": "287",
"avg_value": 0.2323232,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 9.0,
"rbi_rank": "311",
"tb_value": 32.0,
"tb_rank": "1781",
"bb_value": 10.0,
"bb_rank": "261",
"so_value": 18.0,
"so_rank": "354",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3,
"obp_rank": "-",
"slg_value": 0.3232323,
"slg_rank": "-",
"ops_value": 0.6232323,
"ops_rank": null,
"war_value": -0.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 92.0,
"k_percent": 16.1,
"bb_percent": 8.9,
"woba": 0.283,
"xwoba": 0.308,
"xba": 0.263,
"xslg": 0.365,
"sweet_spot_percent": 29.8,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 27.4,
"exit_velocity_avg": 86.6,
"launch_angle_avg": 16.0,
"whiff_percent": 14.3,
"swing_percent": 38.0
},
"components": {
"expected_quality": -0.1564,
"regression_edge": 0.7143,
"xwoba_edge": 0.0857,
"xba_edge": 0.6857,
"xslg_edge": -0.1286,
"barrel_edge": -0.4889,
"hard_hit_edge": -1.6357,
"exit_velocity_edge": -0.88,
"sweet_spot_edge": -0.5833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "682818",
"player_name": "Yohendrick Pinango",
"offense_factor": 1.0157,
"quality_score": 0.2088,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682818",
"espn_id": 4917684,
"player_name": "Yohendrick Pinango",
"team": "TOR",
"role": "batter",
"espn_rank": 305,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 305,
"gp_value": 34.0,
"gp_rank": "314",
"ab_value": 103.0,
"ab_rank": "289",
"r_value": 9.0,
"r_rank": "333",
"h_value": 31.0,
"h_rank": "235",
"avg_value": 0.3009708,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 17.0,
"rbi_rank": "216",
"tb_value": 47.0,
"tb_rank": "1406",
"bb_value": 5.0,
"bb_rank": "358",
"so_value": 24.0,
"so_rank": "294",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3333333,
"obp_rank": "-",
"slg_value": 0.4563106,
"slg_rank": "-",
"ops_value": 0.7896439,
"ops_rank": null,
"war_value": 0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 79.0,
"k_percent": 22.2,
"bb_percent": 4.6,
"woba": 0.347,
"xwoba": 0.326,
"xba": 0.285,
"xslg": 0.434,
"sweet_spot_percent": 36.7,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 43.0,
"exit_velocity_avg": 91.4,
"launch_angle_avg": 10.1,
"whiff_percent": 25.6,
"swing_percent": 50.6
},
"components": {
"expected_quality": 0.6372,
"regression_edge": -0.6,
"xwoba_edge": 0.6,
"xba_edge": 1.3143,
"xslg_edge": 0.8571,
"barrel_edge": 0.1333,
"hard_hit_edge": 0.5929,
"exit_velocity_edge": 1.04,
"sweet_spot_edge": 0.5667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "676391",
"player_name": "Ernie Clement",
"offense_factor": 0.9429,
"quality_score": -0.7612,
"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": 93,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 93,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 252.0,
"ab_rank": "14",
"r_value": 30.0,
"r_rank": "79",
"h_value": 77.0,
"h_rank": "3",
"avg_value": 0.3055555,
"avg_rank": 10.0,
"2b_value": 19.0,
"2b_rank": "2",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 116.0,
"tb_rank": "484",
"bb_value": 8.0,
"bb_rank": "293",
"so_value": 24.0,
"so_rank": "294",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3256704,
"obp_rank": "96",
"slg_value": 0.4603174,
"slg_rank": "45",
"ops_value": 0.7859878,
"ops_rank": 61.0,
"war_value": 1.25,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 9.2,
"bb_percent": 3.1,
"woba": 0.343,
"xwoba": 0.278,
"xba": 0.261,
"xslg": 0.356,
"sweet_spot_percent": 31.9,
"barrel_batted_rate": 2.6,
"hard_hit_percent": 25.8,
"exit_velocity_avg": 85.7,
"launch_angle_avg": 15.3,
"whiff_percent": 15.1,
"swing_percent": 57.3
},
"components": {
"expected_quality": -0.5868,
"regression_edge": -1.8571,
"xwoba_edge": -0.7714,
"xba_edge": 0.6286,
"xslg_edge": -0.2571,
"barrel_edge": -0.9778,
"hard_hit_edge": -1.8643,
"exit_velocity_edge": -1.24,
"sweet_spot_edge": -0.2333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "807727",
"player_name": "Charles McAdoo",
"offense_factor": 1.0502,
"quality_score": 0.6696,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "807727",
"espn_id": 5205698,
"player_name": "Charles McAdoo",
"team": "TOR",
"role": "batter",
"espn_rank": 270,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 270,
"gp_value": 3.0,
"gp_rank": "521",
"ab_value": 11.0,
"ab_rank": "505",
"r_value": 2.0,
"r_rank": "455",
"h_value": 3.0,
"h_rank": "475",
"avg_value": 0.2727272,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 3.0,
"rbi_rank": "427",
"tb_value": 6.0,
"tb_rank": "2309",
"bb_value": 0.0,
"bb_rank": "503",
"so_value": 2.0,
"so_rank": "512",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2727272,
"obp_rank": "-",
"slg_value": 0.5454545,
"slg_rank": "-",
"ops_value": 0.8181817,
"ops_rank": null,
"war_value": 0.18,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 18.2,
"bb_percent": 0.0,
"woba": 0.351,
"xwoba": 0.373,
"xba": 0.317,
"xslg": 0.545,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 11.1,
"hard_hit_percent": 55.6,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 17.4,
"whiff_percent": 26.3,
"swing_percent": 57.6
},
"components": {
"expected_quality": 1.6278,
"regression_edge": 0.6286,
"xwoba_edge": 1.9429,
"xba_edge": 2.2286,
"xslg_edge": 2.4429,
"barrel_edge": 0.9111,
"hard_hit_edge": 2.3929,
"exit_velocity_edge": 0.56,
"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.0382,
"raw_average_factor": 1.0382,
"team_espn_average_rank": 270.33,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "656941",
"player_name": "Kyle Schwarber",
"offense_factor": 1.1035,
"quality_score": 1.3803,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656941",
"espn_id": 33712,
"player_name": "Kyle Schwarber",
"team": "PHI",
"role": "batter",
"espn_rank": 46,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 46,
"gp_value": 62.0,
"gp_rank": "67",
"ab_value": 235.0,
"ab_rank": "51",
"r_value": 40.0,
"r_rank": "26",
"h_value": 56.0,
"h_rank": "82",
"avg_value": 0.2382978,
"avg_rank": 109.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 23.0,
"hr_rank": "1",
"rbi_value": 40.0,
"rbi_rank": "19",
"tb_value": 136.0,
"tb_rank": "321",
"bb_value": 40.0,
"bb_rank": "14",
"so_value": 95.0,
"so_rank": "2",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3584229,
"obp_rank": "45",
"slg_value": 0.5787234,
"slg_rank": "3",
"ops_value": 0.9371463,
"ops_rank": 5.0,
"war_value": 1.84,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 238.0,
"k_percent": 34.1,
"bb_percent": 14.3,
"woba": 0.401,
"xwoba": 0.378,
"xba": 0.235,
"xslg": 0.53,
"sweet_spot_percent": 37.9,
"barrel_batted_rate": 22.1,
"hard_hit_percent": 50.7,
"exit_velocity_avg": 93.1,
"launch_angle_avg": 21.7,
"whiff_percent": 33.7,
"swing_percent": 43.7
},
"components": {
"expected_quality": 1.712,
"regression_edge": -0.6571,
"xwoba_edge": 2.0857,
"xba_edge": -0.1143,
"xslg_edge": 2.2286,
"barrel_edge": 2.5,
"hard_hit_edge": 1.6929,
"exit_velocity_edge": 1.72,
"sweet_spot_edge": 0.7667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "3B",
"player_id": "664761",
"player_name": "Alec Bohm",
"offense_factor": 0.9977,
"quality_score": -0.031,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664761",
"espn_id": 41169,
"player_name": "Alec Bohm",
"team": "PHI",
"role": "batter",
"espn_rank": 476,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 476,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 223.0,
"ab_rank": "86",
"r_value": 19.0,
"r_rank": "194",
"h_value": 50.0,
"h_rank": "113",
"avg_value": 0.2242152,
"avg_rank": 139.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 7.0,
"hr_rank": "100",
"rbi_value": 30.0,
"rbi_rank": "78",
"tb_value": 80.0,
"tb_rank": "893",
"bb_value": 17.0,
"bb_rank": "161",
"so_value": 35.0,
"so_rank": "201",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2816326,
"obp_rank": "155",
"slg_value": 0.3587443,
"slg_rank": "134",
"ops_value": 0.6403769,
"ops_rank": 145.0,
"war_value": -0.34,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 204.0,
"k_percent": 14.3,
"bb_percent": 6.9,
"woba": 0.285,
"xwoba": 0.295,
"xba": 0.244,
"xslg": 0.354,
"sweet_spot_percent": 35.6,
"barrel_batted_rate": 3.7,
"hard_hit_percent": 42.4,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 11.1,
"whiff_percent": 17.1,
"swing_percent": 43.6
},
"components": {
"expected_quality": -0.0854,
"regression_edge": 0.2857,
"xwoba_edge": -0.2857,
"xba_edge": 0.1429,
"xslg_edge": -0.2857,
"barrel_edge": -0.7333,
"hard_hit_edge": 0.5071,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": 0.3833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "607208",
"player_name": "Trea Turner",
"offense_factor": 0.9913,
"quality_score": -0.1155,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "607208",
"espn_id": 33710,
"player_name": "Trea Turner",
"team": "PHI",
"role": "batter",
"espn_rank": 205,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 205,
"gp_value": 64.0,
"gp_rank": "37",
"ab_value": 262.0,
"ab_rank": "4",
"r_value": 39.0,
"r_rank": "34",
"h_value": 60.0,
"h_rank": "61",
"avg_value": 0.2290076,
"avg_rank": 130.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 7.0,
"hr_rank": "100",
"rbi_value": 21.0,
"rbi_rank": "174",
"tb_value": 91.0,
"tb_rank": "808",
"bb_value": 19.0,
"bb_rank": "135",
"so_value": 61.0,
"so_rank": "53",
"sb_value": 13.0,
"sb_rank": "15",
"obp_value": 0.2801418,
"obp_rank": "156",
"slg_value": 0.3473282,
"slg_rank": "143",
"ops_value": 0.62747,
"ops_rank": 152.0,
"war_value": 0.41,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 239.0,
"k_percent": 21.6,
"bb_percent": 6.7,
"woba": 0.28,
"xwoba": 0.29,
"xba": 0.241,
"xslg": 0.364,
"sweet_spot_percent": 33.2,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 40.1,
"exit_velocity_avg": 89.3,
"launch_angle_avg": 10.6,
"whiff_percent": 26.5,
"swing_percent": 51.4
},
"components": {
"expected_quality": -0.1809,
"regression_edge": 0.2857,
"xwoba_edge": -0.4286,
"xba_edge": 0.0571,
"xslg_edge": -0.1429,
"barrel_edge": -0.3556,
"hard_hit_edge": 0.1786,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": -0.0167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "547180",
"player_name": "Bryce Harper",
"offense_factor": 1.1276,
"quality_score": 1.7016,
"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": 87,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 87,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 227.0,
"ab_rank": "79",
"r_value": 40.0,
"r_rank": "26",
"h_value": 60.0,
"h_rank": "61",
"avg_value": 0.2643171,
"avg_rank": 61.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 14.0,
"hr_rank": "17",
"rbi_value": 37.0,
"rbi_rank": "34",
"tb_value": 115.0,
"tb_rank": "302",
"bb_value": 39.0,
"bb_rank": "16",
"so_value": 50.0,
"so_rank": "100",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3680297,
"obp_rank": "32",
"slg_value": 0.5066079,
"slg_rank": "26",
"ops_value": 0.8746376,
"ops_rank": 21.0,
"war_value": 1.28,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 227.0,
"k_percent": 18.6,
"bb_percent": 14.5,
"woba": 0.378,
"xwoba": 0.413,
"xba": 0.29,
"xslg": 0.569,
"sweet_spot_percent": 37.2,
"barrel_batted_rate": 13.9,
"hard_hit_percent": 43.9,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 12.5,
"whiff_percent": 29.1,
"swing_percent": 51.3
},
"components": {
"expected_quality": 1.8158,
"regression_edge": 1.0,
"xwoba_edge": 2.5,
"xba_edge": 1.4571,
"xslg_edge": 2.5,
"barrel_edge": 1.5333,
"hard_hit_edge": 0.7214,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.65,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "592663",
"player_name": "J.T. Realmuto",
"offense_factor": 1.0197,
"quality_score": 0.2632,
"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": 156,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 156,
"gp_value": 43.0,
"gp_rank": "250",
"ab_value": 138.0,
"ab_rank": "224",
"r_value": 14.0,
"r_rank": "261",
"h_value": 29.0,
"h_rank": "247",
"avg_value": 0.2101449,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": "271",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 10.0,
"rbi_rank": "298",
"tb_value": 42.0,
"tb_rank": "1529",
"bb_value": 13.0,
"bb_rank": "212",
"so_value": 28.0,
"so_rank": "258",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.299363,
"obp_rank": "-",
"slg_value": 0.3043478,
"slg_rank": "-",
"ops_value": 0.6037108,
"ops_rank": null,
"war_value": 0.74,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 130.0,
"k_percent": 17.8,
"bb_percent": 8.3,
"woba": 0.279,
"xwoba": 0.327,
"xba": 0.256,
"xslg": 0.39,
"sweet_spot_percent": 31.5,
"barrel_batted_rate": 4.5,
"hard_hit_percent": 42.3,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 10.9,
"whiff_percent": 22.9,
"swing_percent": 46.3
},
"components": {
"expected_quality": 0.2946,
"regression_edge": 1.3714,
"xwoba_edge": 0.6286,
"xba_edge": 0.4857,
"xslg_edge": 0.2286,
"barrel_edge": -0.5556,
"hard_hit_edge": 0.4929,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": -0.3,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "681082",
"player_name": "Bryson Stott",
"offense_factor": 1.0156,
"quality_score": 0.2085,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681082",
"espn_id": 42417,
"player_name": "Bryson Stott",
"team": "PHI",
"role": "batter",
"espn_rank": 480,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 480,
"gp_value": 59.0,
"gp_rank": "132",
"ab_value": 202.0,
"ab_rank": "125",
"r_value": 17.0,
"r_rank": "217",
"h_value": 44.0,
"h_rank": "153",
"avg_value": 0.2178217,
"avg_rank": 149.0,
"2b_value": 9.0,
"2b_rank": "126",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 28.0,
"rbi_rank": "99",
"tb_value": 75.0,
"tb_rank": "672",
"bb_value": 14.0,
"bb_rank": "195",
"so_value": 38.0,
"so_rank": "177",
"sb_value": 11.0,
"sb_rank": "18",
"obp_value": 0.2706422,
"obp_rank": "165",
"slg_value": 0.3712871,
"slg_rank": "126",
"ops_value": 0.6419293,
"ops_rank": 142.0,
"war_value": -0.35,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 182.0,
"k_percent": 17.3,
"bb_percent": 6.4,
"woba": 0.284,
"xwoba": 0.306,
"xba": 0.249,
"xslg": 0.399,
"sweet_spot_percent": 32.3,
"barrel_batted_rate": 7.8,
"hard_hit_percent": 40.7,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 16.2,
"whiff_percent": 17.5,
"swing_percent": 43.4
},
"components": {
"expected_quality": 0.1907,
"regression_edge": 0.6286,
"xwoba_edge": 0.0286,
"xba_edge": 0.2857,
"xslg_edge": 0.3571,
"barrel_edge": 0.1778,
"hard_hit_edge": 0.2643,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": -0.1667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "624641",
"player_name": "Edmundo Sosa",
"offense_factor": 1.0266,
"quality_score": 0.3544,
"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": 428,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 428,
"gp_value": 35.0,
"gp_rank": "309",
"ab_value": 95.0,
"ab_rank": "306",
"r_value": 11.0,
"r_rank": "304",
"h_value": 19.0,
"h_rank": "327",
"avg_value": 0.2,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 17.0,
"rbi_rank": "216",
"tb_value": 31.0,
"tb_rank": "1662",
"bb_value": 3.0,
"bb_rank": "406",
"so_value": 24.0,
"so_rank": "294",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.2352941,
"obp_rank": "-",
"slg_value": 0.3263157,
"slg_rank": "-",
"ops_value": 0.5616098,
"ops_rank": null,
"war_value": -0.18,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 89.0,
"k_percent": 23.3,
"bb_percent": 2.9,
"woba": 0.248,
"xwoba": 0.334,
"xba": 0.285,
"xslg": 0.457,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 39.7,
"exit_velocity_avg": 87.3,
"launch_angle_avg": 9.4,
"whiff_percent": 24.4,
"swing_percent": 60.8
},
"components": {
"expected_quality": 0.5902,
"regression_edge": 2.0,
"xwoba_edge": 0.8286,
"xba_edge": 1.3143,
"xslg_edge": 1.1857,
"barrel_edge": 0.2667,
"hard_hit_edge": 0.1214,
"exit_velocity_edge": -0.6,
"sweet_spot_edge": -0.0667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "666969",
"player_name": "Adolis García",
"offense_factor": 1.0109,
"quality_score": 0.1453,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "666969",
"espn_id": 35537,
"player_name": "Adolis Garcia",
"team": "PHI",
"role": "batter",
"espn_rank": 518,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 518,
"gp_value": 64.0,
"gp_rank": "37",
"ab_value": 221.0,
"ab_rank": "92",
"r_value": 20.0,
"r_rank": "188",
"h_value": 44.0,
"h_rank": "153",
"avg_value": 0.199095,
"avg_rank": 165.0,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 19.0,
"rbi_rank": "194",
"tb_value": 72.0,
"tb_rank": "801",
"bb_value": 20.0,
"bb_rank": "123",
"so_value": 78.0,
"so_rank": "13",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.2741935,
"obp_rank": "163",
"slg_value": 0.3257918,
"slg_rank": "159",
"ops_value": 0.5999853,
"ops_rank": 164.0,
"war_value": -0.55,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 212.0,
"k_percent": 31.5,
"bb_percent": 8.1,
"woba": 0.271,
"xwoba": 0.295,
"xba": 0.222,
"xslg": 0.361,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 47.3,
"exit_velocity_avg": 92.0,
"launch_angle_avg": 14.9,
"whiff_percent": 34.0,
"swing_percent": 45.1
},
"components": {
"expected_quality": 0.0637,
"regression_edge": 0.6857,
"xwoba_edge": -0.2857,
"xba_edge": -0.4857,
"xslg_edge": -0.1857,
"barrel_edge": 0.4222,
"hard_hit_edge": 1.2071,
"exit_velocity_edge": 1.28,
"sweet_spot_edge": 0.85,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "669016",
"player_name": "Brandon Marsh",
"offense_factor": 1.0506,
"quality_score": 0.6744,
"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": 37,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 37,
"gp_value": 60.0,
"gp_rank": "110",
"ab_value": 213.0,
"ab_rank": "111",
"r_value": 33.0,
"r_rank": "62",
"h_value": 72.0,
"h_rank": "10",
"avg_value": 0.3380281,
"avg_rank": 1.0,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 30.0,
"rbi_rank": "78",
"tb_value": 111.0,
"tb_rank": "336",
"bb_value": 11.0,
"bb_rank": "245",
"so_value": 52.0,
"so_rank": "87",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.368421,
"obp_rank": "32",
"slg_value": 0.5211267,
"slg_rank": "22",
"ops_value": 0.8895477,
"ops_rank": 17.0,
"war_value": 2.11,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 188.0,
"k_percent": 22.8,
"bb_percent": 4.8,
"woba": 0.384,
"xwoba": 0.345,
"xba": 0.304,
"xslg": 0.469,
"sweet_spot_percent": 47.0,
"barrel_batted_rate": 8.0,
"hard_hit_percent": 47.6,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 12.8,
"whiff_percent": 22.5,
"swing_percent": 52.8
},
"components": {
"expected_quality": 1.0991,
"regression_edge": -1.1143,
"xwoba_edge": 1.1429,
"xba_edge": 1.8571,
"xslg_edge": 1.3571,
"barrel_edge": 0.2222,
"hard_hit_edge": 1.25,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": 2.2833,
"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 PHI | True | 1 | 0.6211 | 1 | 0.9472 | 1.0811 | 0.9160 | 1.0132 | neutral | 0.2670 | 0.2620 | 29.50 | 4.90 | 33.40 | 8.30 | 44.30 | |
| Home TOR | True | 75 | -0.5815 | 0.8400 | 1.0494 | 0.9342 | 0.9614 | 1.0682 | neutral | 0.3560 | 0.3410 | 15.80 | 6.80 | 19.20 | 7.90 | 44.10 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away PHI | True | None | 100 | 90.03 | 2074 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0182 | |
| Home TOR | True | None | 78 | 84.65 | 1978 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2800 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0415 |
| home_runs_vs_away_pitcher | 0.9472 |
| home_pitcher_quality_edge | -1.2026 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "571578",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 210.0,
"k_percent": 15.8,
"bb_percent": 6.8,
"woba": 0.341,
"xwoba": 0.356,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 7.9,
"hard_hit_percent": 44.1,
"avg_best_speed": 77.8778,
"avg_hyper_speed": 94.6108,
"whiff_percent": 19.2,
"swing_percent": 48.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.808,
"command_and_miss": -0.6714,
"regression_edge": -0.4286,
"xwoba_edge": -1.1857,
"barrel_edge": -0.1778,
"hard_hit_edge": -0.7857,
"whiff_edge": -0.9429,
"bb_edge": 0.575,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "571578",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 78,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 78,
"pitch_usage": 0.0,
"release_speed": 84.64535351200053,
"release_spin_rate": 1978.0704052080189,
"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": 78,
"pitch_usage": 0.0,
"release_speed": 84.64535351200053,
"release_spin_rate": 1978.0704052080189,
"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.6454,
"release_spin_rate": 1978.0704,
"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.5815,
"sample_weight": 0.84,
"run_prevention_factor": 1.0494,
"strikeout_factor": 0.9342,
"walk_factor": 0.9614,
"homer_factor": 1.0682,
"woba_minus_xwoba": -0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "571578",
"espn_id": 31313,
"player_name": "Patrick Corbin",
"team": "TOR",
"role": "pitcher",
"espn_rank": 75,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 75,
"gp_value": 11.0,
"gp_rank": 347,
"gs_value": 11.0,
"gs_rank": 82,
"qs_value": 1.0,
"qs_rank": 130,
"era_value": 3.9754,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 54.1,
"ip_rank": 112,
"h_value": 59.0,
"h_rank": 76,
"er_value": 24.0,
"er_rank": 97,
"hr_value": 6.0,
"hr_rank": 102,
"bb_value": 16.0,
"bb_rank": 147,
"k_value": 37.0,
"k_rank": 147,
"k_per_9_value": 6.1288347,
"k_per_9_rank": 35,
"whip_value": 1.3803,
"whip_rank": null,
"war_value": 1.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "650911",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 322.0,
"k_percent": 29.5,
"bb_percent": 4.9,
"woba": 0.262,
"xwoba": 0.267,
"sweet_spot_percent": 28.5,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 44.3,
"avg_best_speed": 77.8396,
"avg_hyper_speed": 94.7555,
"whiff_percent": 33.4,
"swing_percent": 50.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6611,
"command_and_miss": 1.0143,
"regression_edge": -0.1429,
"xwoba_edge": 1.3571,
"barrel_edge": -0.2667,
"hard_hit_edge": -0.8143,
"whiff_edge": 1.0857,
"bb_edge": 1.05,
"pitch_design_score": 0.0182
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "650911",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 100,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 100,
"pitch_usage": 0.0,
"release_speed": 90.03469104027522,
"release_spin_rate": 2074.191427859334,
"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": 100,
"pitch_usage": 0.0,
"release_speed": 90.03469104027522,
"release_spin_rate": 2074.191427859334,
"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.0347,
"release_spin_rate": 2074.1914,
"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.0182,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1298,
"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.6211,
"sample_weight": 1.0,
"run_prevention_factor": 0.9472,
"strikeout_factor": 1.0811,
"walk_factor": 0.916,
"homer_factor": 1.0132,
"woba_minus_xwoba": -0.005,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "650911",
"espn_id": 42359,
"player_name": "Cristopher Sanchez",
"team": "PHI",
"role": "pitcher",
"espn_rank": 1,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 1,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 10.0,
"qs_rank": 1,
"era_value": 1.4594,
"era_rank": 1.0,
"w_value": 7.0,
"w_rank": 6,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 86.1,
"ip_rank": 2,
"h_value": 77.0,
"h_rank": 8,
"er_value": 14.0,
"er_rank": 195,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 17.0,
"bb_rank": 129,
"k_value": 103.0,
"k_rank": 2,
"k_per_9_value": 10.7374525,
"k_per_9_rank": 27,
"whip_value": 1.0888,
"whip_rank": 23.0,
"war_value": 4.66,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0415,
"home_runs_vs_away_pitcher": 0.9472,
"home_pitcher_quality_edge": -1.2026
},
"score_before": {
"away_runs": 3.0,
"home_runs": 1.0
},
"score_after": {
"away_runs": 3.1245,
"home_runs": 0.9472,
"home_win_probability": 0.2933
},
"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 PHI | 12-46 | 0.207 | 0.90 | 3.20 | -137 | cold | strong | |
| Home TOR | 13-48 | 0.213 | 1 | 3.10 | -127 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away PHI | 35-30 | 0.538 | -19 | -0.292 | True |
| Home TOR | 32-34 | 0.485 | -13 | -0.197 | True |
| Signal | - | - | 0.095 | 0.015 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target PHI | - | - | 4 | - | - | - | - |
| Game target TOR | - | - | 1 | - | - | - | - |
| Player finalized PHI | 56 | 14 | 8 | 1 | 9 | 5 | 13 |
| Player finalized TOR | 51 | 13 | 8 | 0 | 7 | 5 | 10 |
| Player model fractional PHI | 55.53 | 13.04 | 7.31 | 2.27 | 7.06 | 5.39 | 13.80 |
| Player model fractional TOR | 50.26 | 12.14 | 6.51 | 1.60 | 5.58 | 4.36 | 10.03 |
| Simulation box PHI | 34 | 7 | 3 | 0 | 3 | 1 | 9 |
| Simulation box TOR | 31 | 4 | 2 | 1 | 2 | 5 | 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 PHI | Starter | Cristopher Sánchez | 7 | 1 | 4 | 2 | 4 | 1.86 | 1.03 | True |
| Away PHI | Middle Reliever | Jhoan Duran | 1 | 0 | 0 | 0 | 0 | 2.66 | 0.88 | True |
| Away PHI | Middle Reliever | Brad Keller | 0.20 | 1 | 0 | 1 | 1 | 3.80 | 1.40 | True |
| Away PHI | Middle Reliever | Orion Kerkering | 0.10 | 0 | 0 | 1 | 0 | 3.18 | 1.42 | True |
| Home TOR | Starter | Patrick Corbin | 5 | 3 | 4 | 6 | 1 | 4.14 | 1.40 | True |
| Home TOR | Middle Reliever | Braydon Fisher | 1 | 0 | 1 | 0 | 0 | 2.80 | 0.97 | True |
| Home TOR | Middle Reliever | Jeff Hoffman | 1 | 0 | 2 | 1 | 0 | 6.98 | 1.57 | True |
| Home TOR | Middle Reliever | Louis Varland | 1 | 0 | 1 | 0 | 0 | 1.87 | 0.86 | True |
| Home TOR | Middle Reliever | Tyler Rogers | 1 | 0 | 1 | 0 | 0 | 2.75 | 1.02 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | TOR | batter | DH | George Springer | worse | 11 | 2 | 9 | 1 | 10 | predicted_AB | -2.4600 | deboost | worse |
| away | PHI | batter | 2B | Bryson Stott | worse | 11 | 5 | 6 | 4 | 7 | predicted_RBI | 1.5600 | boost | better |
| away | PHI | batter | DH | Kyle Schwarber | worse | 11 | 3 | 8 | 4 | 7 | predicted_SO | -1.5360 | deboost | better |
| away | PHI | batter | LF | Edmundo Sosa | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 1.2340 | boost | worse |
| home | TOR | batter | 2B | Charles McAdoo | better | 10 | 6 | 4 | 7 | 3 | predicted_H | 1.1900 | boost | better |
| home | TOR | batter | 1B | Vladimir Guerrero Jr. | worse | 11 | 4 | 7 | 3 | 8 | predicted_AB | -1.0700 | deboost | worse |
| away | PHI | batter | SS | Trea Turner | worse | 10 | 1 | 9 | 1 | 9 | predicted_H | -1.0600 | deboost | worse |
| home | TOR | batter | SS | Ernie Clement | worse | 11 | 2 | 9 | 3 | 8 | predicted_H | -1.0600 | deboost | worse |
| away | PHI | batter | 1B | Bryce Harper | better | 10 | 8 | 2 | 7 | 3 | predicted_H | 1.0500 | boost | better |
| home | TOR | batter | 3B | Kazuma Okamoto | better | 9 | 4 | 5 | 5 | 4 | predicted_AB | -1.0400 | deboost | worse |
| away | PHI | batter | 3B | Alec Bohm | worse | 9 | 3 | 6 | 4 | 5 | predicted_H | 1.0300 | boost | better |
| away | PHI | pitcher | Starter | Cristopher Sánchez | better | 3 | 1 | 2 | 2 | 1 | predicted_ER | -1.0000 | deboost | better |
| away | PHI | pitcher | Middle Reliever | Jhoan Duran | better | 1 | 0 | 1 | 1 | 0 | predicted_H | -1.0000 | deboost | better |
| away | PHI | pitcher | Middle Reliever | Brad Keller | worse | 3 | 2 | 1 | 0 | 3 | predicted_ER | 1.0000 | boost | worse |
| away | PHI | pitcher | Middle Reliever | Orion Kerkering | worse | 1 | 0 | 1 | 0 | 1 | predicted_SO | -1.0000 | deboost | worse |
| home | TOR | batter | C | Brandon Valenzuela | worse | 11 | 4 | 7 | 3 | 8 | predicted_AB | 0.8760 | boost | better |
| home | TOR | batter | CF | Daulton Varsho | worse | 10 | 1 | 9 | 2 | 8 | predicted_H | -0.8400 | deboost | worse |
| away | PHI | batter | CF | Brandon Marsh | worse | 11 | 5 | 6 | 4 | 7 | predicted_2B | 0.8110 | boost | better |
| away | PHI | batter | RF | Adolis García | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 0.7970 | boost | worse |
| away | PHI | batter | C | J.T. Realmuto | worse | 11 | 2 | 9 | 1 | 10 | predicted_H | -0.7500 | deboost | worse |
| home | TOR | batter | RF | Myles Straw | worse | 10 | 2 | 8 | 3 | 7 | predicted_BB | 0.7000 | boost | better |
| home | TOR | batter | LF | Yohendrick Pinango | worse | 11 | 2 | 9 | 3 | 8 | predicted_SO | -0.6900 | deboost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Cristopher Sánchez |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.6211 |
| ESPN Rank | 1 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0182 |
| Avg Velo | 90.0347 |
| Avg Spin | 2074.1914 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 7 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 4 |
| Pre SO | 4 |
| Season ERA | 1.4595 |
| Season WHIP | 1.0888 |
| Role Avg IP | 6.6410 |
| Recent Avg IP | 7.6000 |
| Last Start IP | 7 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"opponent": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"edges": {
"quality_edge": 0.0256,
"offense_edge": -0.1144,
"opponent_offense_edge": -0.0586,
"defense_strength": 0.0317,
"opponent_defense_weakness": -0.0837,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0043,
"run_prevention": 0.9862,
"strikeout": 1.0055
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "650911",
"profile": {
"available": true,
"pitcher_id": "650911",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 322.0,
"k_percent": 29.5,
"bb_percent": 4.9,
"woba": 0.262,
"xwoba": 0.267,
"sweet_spot_percent": 28.5,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 44.3,
"avg_best_speed": 77.8396,
"avg_hyper_speed": 94.7555,
"whiff_percent": 33.4,
"swing_percent": 50.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6611,
"command_and_miss": 1.0143,
"regression_edge": -0.1429,
"xwoba_edge": 1.3571,
"barrel_edge": -0.2667,
"hard_hit_edge": -0.8143,
"whiff_edge": 1.0857,
"bb_edge": 1.05,
"pitch_design_score": 0.0182
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "650911",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 100,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 100,
"pitch_usage": 0.0,
"release_speed": 90.03469104027522,
"release_spin_rate": 2074.191427859334,
"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": 100,
"pitch_usage": 0.0,
"release_speed": 90.03469104027522,
"release_spin_rate": 2074.191427859334,
"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.0347,
"release_spin_rate": 2074.1914,
"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.0182,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1298,
"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.6211,
"sample_weight": 1.0,
"run_prevention_factor": 0.9472,
"strikeout_factor": 1.0811,
"walk_factor": 0.916,
"homer_factor": 1.0132,
"woba_minus_xwoba": -0.005,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "650911",
"espn_id": 42359,
"player_name": "Cristopher Sanchez",
"team": "PHI",
"role": "pitcher",
"espn_rank": 1,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 1,
"gp_value": 13.0,
"gp_rank": 238,
"gs_value": 13.0,
"gs_rank": 11,
"qs_value": 10.0,
"qs_rank": 1,
"era_value": 1.4594,
"era_rank": 1.0,
"w_value": 7.0,
"w_rank": 6,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 86.1,
"ip_rank": 2,
"h_value": 77.0,
"h_rank": 8,
"er_value": 14.0,
"er_rank": 195,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 17.0,
"bb_rank": 129,
"k_value": 103.0,
"k_rank": 2,
"k_per_9_value": 10.7374525,
"k_per_9_rank": 27,
"whip_value": 1.0888,
"whip_rank": 23.0,
"war_value": 4.66,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9472,
"adjusted": 1
},
"predicted_H": {
"original": 6.0,
"factor": 0.9472,
"adjusted": 6
},
"predicted_BB": {
"original": 1.0,
"factor": 0.916,
"adjusted": 1
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0132,
"adjusted": 0
},
"predicted_SO": {
"original": 8.0,
"factor": 1.0811,
"adjusted": 9
}
}
}
}{
"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": 70.0,
"ER": 11,
"H": 59,
"BB": 13,
"SO": 80,
"HR": 3,
"ERA": 1.4142857142857144,
"WHIP": 1.0285714285714285,
"K9": 10.285714285714286,
"HR9": 0.38571428571428573,
"games_pitched": 10,
"quality_starts": 9,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "650911",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 100,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 100,
"pitch_usage": 0.0,
"release_speed": 90.03469104027522,
"release_spin_rate": 2074.191427859334,
"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": 100,
"pitch_usage": 0.0,
"release_speed": 90.03469104027522,
"release_spin_rate": 2074.191427859334,
"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.0347,
"release_spin_rate": 2074.1914,
"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.0182,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1298,
"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": "650911",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 7.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 38.0,
"ER": 1.0,
"R": 1.0,
"H": 26.0,
"BB": 3.0,
"SO": 43.0,
"HR": 0.0,
"BF": 140.0,
"Pitches": 491.0
},
"per_game": {
"IP": 7.2,
"ER": 0.2,
"R": 0.2,
"H": 5.2,
"BB": 0.6,
"SO": 8.6,
"HR": 0.0,
"BF": 28.0,
"Pitches": 98.2
},
"rates": {
"ERA": 0.2368,
"WHIP": 0.7632,
"ER_per_IP": 0.02632,
"H_per_IP": 0.68421,
"BB_per_IP": 0.07895,
"SO_per_IP": 1.13158,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 70.0,
"ER": 11.0,
"R": 14.0,
"H": 59.0,
"BB": 13.0,
"SO": 80.0,
"HR": 3.0,
"BF": 280.0,
"Pitches": 961.0
},
"per_game": {
"IP": 7.0,
"ER": 1.1,
"R": 1.4,
"H": 5.9,
"BB": 1.3,
"SO": 8.0,
"HR": 0.3,
"BF": 28.0,
"Pitches": 96.1
},
"rates": {
"ERA": 1.4143,
"WHIP": 1.0286,
"ER_per_IP": 0.15714,
"H_per_IP": 0.84286,
"BB_per_IP": 0.18571,
"SO_per_IP": 1.14286,
"HR_per_IP": 0.04286
}
},
"season": {
"games": 13,
"totals": {
"IP": 86.1,
"ER": 14.0,
"R": 19.0,
"H": 77.0,
"BB": 17.0,
"SO": 103.0,
"HR": 3.0,
"BF": 349.0,
"Pitches": 1237.0
},
"per_game": {
"IP": 6.2,
"ER": 1.0769,
"R": 1.4615,
"H": 5.9231,
"BB": 1.3077,
"SO": 7.9231,
"HR": 0.2308,
"BF": 26.8462,
"Pitches": 95.1538
},
"rates": {
"ERA": 1.4595,
"WHIP": 1.0888,
"ER_per_IP": 0.16216,
"H_per_IP": 0.89189,
"BB_per_IP": 0.19691,
"SO_per_IP": 1.19305,
"HR_per_IP": 0.03475
}
}
},
"weighted_prediction": {
"predicted_IP": 7.1,
"predicted_ER": 1.499,
"predicted_H": 6.028,
"predicted_BB": 1.469,
"predicted_SO": 7.904,
"predicted_HR": 0.396,
"predicted_ERA": 1.8574,
"predicted_WHIP": 1.0325
}
}{
"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": 7.1,
"form": 7.1,
"final": 7.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 1.499,
"final": 1.7332,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 6.028,
"final": 4.1454,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 4.0,
"form": 1.469,
"final": 2.6519,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 7.904,
"final": 5.612,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.396,
"final": 0.6783,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 1.8574,
"final": 1.8574,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0325,
"final": 1.0325,
"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.4716 |
| ESPN Rank | 44 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2800 |
| Avg Velo | 95.6120 |
| Avg Spin | 1933.3823 |
| 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 | 1.3065 |
| Season WHIP | 0.8226 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"opponent": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"edges": {
"quality_edge": 0.0256,
"offense_edge": -0.1144,
"opponent_offense_edge": -0.0586,
"defense_strength": 0.0317,
"opponent_defense_weakness": -0.0837,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0043,
"run_prevention": 0.9862,
"strikeout": 1.0055
},
"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": 42.9,
"bb_percent": 6.5,
"woba": 0.21,
"xwoba": 0.235,
"sweet_spot_percent": 28.2,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 53.8,
"avg_best_speed": 85.29,
"avg_hyper_speed": 95.7865,
"whiff_percent": 41.9,
"swing_percent": 50.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.0027,
"command_and_miss": 2.06,
"regression_edge": -0.7143,
"xwoba_edge": 2.2714,
"barrel_edge": -0.1333,
"hard_hit_edge": -2.1714,
"whiff_edge": 2.3,
"bb_edge": 0.65,
"pitch_design_score": 0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "661395",
"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": 95.61195113309732,
"release_spin_rate": 1933.3823375250277,
"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": 95.61195113309732,
"release_spin_rate": 1933.3823375250277,
"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": 95.612,
"release_spin_rate": 1933.3823,
"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.4716,
"sample_weight": 0.45,
"run_prevention_factor": 0.9599,
"strikeout_factor": 1.0864,
"walk_factor": 0.9766,
"homer_factor": 1.0132,
"woba_minus_xwoba": -0.025,
"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": 682,
"metrics": {
"espn_rank": 44,
"gp_value": 21.0,
"gp_rank": 141,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.3064,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 15.0,
"sv_rank": 5,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 20.2,
"ip_rank": 338,
"h_value": 12.0,
"h_rank": 423,
"er_value": 3.0,
"er_rank": 533,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 5.0,
"bb_rank": 443,
"k_value": 33.0,
"k_rank": 181,
"k_per_9_value": 14.370967,
"k_per_9_rank": 14,
"whip_value": 0.8225,
"whip_rank": null,
"war_value": 1.5,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.982,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.982,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9895,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0059,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0389,
"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.0,
"ER": 1,
"H": 4,
"BB": 1,
"SO": 17,
"HR": 1,
"ERA": 0.9,
"WHIP": 0.5,
"K9": 15.3,
"HR9": 0.9,
"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": "661395",
"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": 95.61195113309732,
"release_spin_rate": 1933.3823375250277,
"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": 95.61195113309732,
"release_spin_rate": 1933.3823375250277,
"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": 95.612,
"release_spin_rate": 1933.3823,
"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": 4.081,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4494,
"prior_weight": 0.5506
},
"role": "pitcher",
"player_id": "661395",
"report_date": "20260608_P",
"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": 0.0,
"BB": 0.0,
"SO": 9.0,
"HR": 0.0,
"BF": 15.0,
"Pitches": 68.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 1.8,
"HR": 0.0,
"BF": 3.0,
"Pitches": 13.6
},
"rates": {
"ERA": 0.0,
"WHIP": 0.0,
"ER_per_IP": 0.0,
"H_per_IP": 0.0,
"BB_per_IP": 0.0,
"SO_per_IP": 1.8,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 1.0,
"SO": 17.0,
"HR": 1.0,
"BF": 34.0,
"Pitches": 154.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.4,
"BB": 0.1,
"SO": 1.7,
"HR": 0.1,
"BF": 3.4,
"Pitches": 15.4
},
"rates": {
"ERA": 0.9,
"WHIP": 0.5,
"ER_per_IP": 0.1,
"H_per_IP": 0.4,
"BB_per_IP": 0.1,
"SO_per_IP": 1.7,
"HR_per_IP": 0.1
}
},
"season": {
"games": 21,
"totals": {
"IP": 20.2,
"ER": 3.0,
"R": 4.0,
"H": 12.0,
"BB": 5.0,
"SO": 33.0,
"HR": 1.0,
"BF": 77.0,
"Pitches": 329.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1429,
"R": 0.1905,
"H": 0.5714,
"BB": 0.2381,
"SO": 1.5714,
"HR": 0.0476,
"BF": 3.6667,
"Pitches": 15.6667
},
"rates": {
"ERA": 1.3065,
"WHIP": 0.8226,
"ER_per_IP": 0.14516,
"H_per_IP": 0.58065,
"BB_per_IP": 0.24194,
"SO_per_IP": 1.59677,
"HR_per_IP": 0.04839
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.296,
"predicted_H": 0.642,
"predicted_BB": 0.238,
"predicted_SO": 1.289,
"predicted_HR": 0.097,
"predicted_ERA": 2.6615,
"predicted_WHIP": 0.8805
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5826,
"form_weight": 0.4174,
"form_reliability": 0.4494,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.081,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4494,
"prior_weight": 0.5506
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.296,
"final": 0.1235,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.642,
"final": 0.8506,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.238,
"final": 0.0993,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.289,
"final": 0.538,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.097,
"final": 0.0405,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.6615,
"final": 2.6615,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.8805,
"final": 0.8805,
"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 | Brad Keller |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2354 |
| ESPN Rank | 137 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1703 |
| Avg Velo | 92.7521 |
| Avg Spin | 2381.2679 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 3.5783 |
| Season WHIP | 1.2289 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"opponent": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"edges": {
"quality_edge": 0.0256,
"offense_edge": -0.1144,
"opponent_offense_edge": -0.0586,
"defense_strength": 0.0317,
"opponent_defense_weakness": -0.0837,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0043,
"run_prevention": 0.9862,
"strikeout": 1.0055
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "641745",
"profile": {
"available": true,
"pitcher_id": "641745",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 94.0,
"k_percent": 25.0,
"bb_percent": 7.8,
"woba": 0.307,
"xwoba": 0.279,
"sweet_spot_percent": 27.6,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 32.9,
"avg_best_speed": 73.7237,
"avg_hyper_speed": 92.7972,
"whiff_percent": 22.8,
"swing_percent": 46.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.7436,
"command_and_miss": 0.05,
"regression_edge": 0.8,
"xwoba_edge": 1.0143,
"barrel_edge": 0.4,
"hard_hit_edge": 0.8143,
"whiff_edge": -0.4286,
"bb_edge": 0.325,
"pitch_design_score": 0.1703
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "641745",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 92.75208172333492,
"release_spin_rate": 2381.267893704051,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 92.75208172333492,
"release_spin_rate": 2381.267893704051,
"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.7521,
"release_spin_rate": 2381.2679,
"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.1703,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.2168,
"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.2354,
"sample_weight": 0.45,
"run_prevention_factor": 0.98,
"strikeout_factor": 0.9977,
"walk_factor": 0.9883,
"homer_factor": 0.9573,
"woba_minus_xwoba": 0.028,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641745",
"espn_id": 35292,
"player_name": "Brad Keller",
"team": "PHI",
"role": "pitcher",
"espn_rank": 137,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 137,
"gp_value": 28.0,
"gp_rank": 39,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.5783,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 3.0,
"sv_rank": 41,
"hld_value": 11.0,
"hld_rank": 8,
"ip_value": 27.2,
"ip_rank": 237,
"h_value": 25.0,
"h_rank": 224,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 9.0,
"bb_rank": 298,
"k_value": 29.0,
"k_rank": 218,
"k_per_9_value": 9.433735,
"k_per_9_rank": 24,
"whip_value": 1.2289,
"whip_rank": null,
"war_value": 0.67,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.991,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.991,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9947,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9808,
"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": 10.0,
"ER": 3,
"H": 9,
"BB": 3,
"SO": 8,
"HR": 2,
"ERA": 2.7,
"WHIP": 1.2,
"K9": 7.2,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "641745",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 92.75208172333492,
"release_spin_rate": 2381.267893704051,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 92.75208172333492,
"release_spin_rate": 2381.267893704051,
"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.7521,
"release_spin_rate": 2381.2679,
"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.1703,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.2168,
"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.463,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5221,
"prior_weight": 0.4779
},
"role": "pitcher",
"player_id": "641745",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 7.0,
"BB": 2.0,
"SO": 3.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 83.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.4,
"BB": 0.4,
"SO": 0.6,
"HR": 0.2,
"BF": 4.8,
"Pitches": 16.6
},
"rates": {
"ERA": 3.6,
"WHIP": 1.8,
"ER_per_IP": 0.4,
"H_per_IP": 1.4,
"BB_per_IP": 0.4,
"SO_per_IP": 0.6,
"HR_per_IP": 0.2
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 3.0,
"R": 3.0,
"H": 9.0,
"BB": 3.0,
"SO": 8.0,
"HR": 2.0,
"BF": 42.0,
"Pitches": 164.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.9,
"BB": 0.3,
"SO": 0.8,
"HR": 0.2,
"BF": 4.2,
"Pitches": 16.4
},
"rates": {
"ERA": 2.7,
"WHIP": 1.2,
"ER_per_IP": 0.3,
"H_per_IP": 0.9,
"BB_per_IP": 0.3,
"SO_per_IP": 0.8,
"HR_per_IP": 0.2
}
},
"season": {
"games": 28,
"totals": {
"IP": 27.2,
"ER": 11.0,
"R": 12.0,
"H": 25.0,
"BB": 9.0,
"SO": 29.0,
"HR": 4.0,
"BF": 116.0,
"Pitches": 464.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3929,
"R": 0.4286,
"H": 0.8929,
"BB": 0.3214,
"SO": 1.0357,
"HR": 0.1429,
"BF": 4.1429,
"Pitches": 16.5714
},
"rates": {
"ERA": 3.5783,
"WHIP": 1.2289,
"ER_per_IP": 0.39759,
"H_per_IP": 0.90361,
"BB_per_IP": 0.3253,
"SO_per_IP": 1.04819,
"HR_per_IP": 0.14458
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.355,
"predicted_H": 0.879,
"predicted_BB": 0.3,
"predicted_SO": 0.709,
"predicted_HR": 0.139,
"predicted_ERA": 3.7981,
"predicted_WHIP": 1.4023
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5519,
"form_weight": 0.4481,
"form_reliability": 0.5221,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.463,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5221,
"prior_weight": 0.4779
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 1.0,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.355,
"final": 0.1591,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.879,
"final": 0.3939,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.3,
"final": 0.6863,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.709,
"final": 0.3177,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.139,
"final": 0.0623,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7981,
"final": 3.7981,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4023,
"final": 1.4023,
"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.4125 |
| ESPN Rank | 100 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1333 |
| Avg Velo | 92.0909 |
| Avg Spin | 2549.1087 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.2192 |
| Season WHIP | 1.2329 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"opponent": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"edges": {
"quality_edge": 0.0256,
"offense_edge": -0.1144,
"opponent_offense_edge": -0.0586,
"defense_strength": 0.0317,
"opponent_defense_weakness": -0.0837,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0043,
"run_prevention": 0.9862,
"strikeout": 1.0055
},
"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": 25.7,
"bb_percent": 10.5,
"woba": 0.289,
"xwoba": 0.25,
"sweet_spot_percent": 25.8,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 21.2,
"avg_best_speed": 68.8578,
"avg_hyper_speed": 91.5653,
"whiff_percent": 26.1,
"swing_percent": 43.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.3608,
"command_and_miss": 0.125,
"regression_edge": 1.1143,
"xwoba_edge": 1.8429,
"barrel_edge": 0.2222,
"hard_hit_edge": 2.4857,
"whiff_edge": 0.0429,
"bb_edge": -0.35,
"pitch_design_score": 0.1333
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "689147",
"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": 92.09089035042419,
"release_spin_rate": 2549.1087104587878,
"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": 92.09089035042419,
"release_spin_rate": 2549.1087104587878,
"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.0909,
"release_spin_rate": 2549.1087,
"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.1333,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9523,
"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.4125,
"sample_weight": 0.45,
"run_prevention_factor": 0.9649,
"strikeout_factor": 1.008,
"walk_factor": 1.0126,
"homer_factor": 0.9224,
"woba_minus_xwoba": 0.039,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "689147",
"espn_id": 4630789,
"player_name": "Orion Kerkering",
"team": "PHI",
"role": "pitcher",
"espn_rank": 100,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 100,
"gp_value": 27.0,
"gp_rank": 62,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.2191,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 24.1,
"ip_rank": 297,
"h_value": 19.0,
"h_rank": 301,
"er_value": 6.0,
"er_rank": 425,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 11.0,
"bb_rank": 236,
"k_value": 27.0,
"k_rank": 242,
"k_per_9_value": 9.986301,
"k_per_9_rank": 22,
"whip_value": 1.2328,
"whip_rank": null,
"war_value": 0.94,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9842,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9842,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0057,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9651,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0036,
"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": 5,
"SO": 16,
"HR": 0,
"ERA": 2.0,
"WHIP": 1.3333333333333333,
"K9": 16.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-07T00:00:00"
}{
"available": true,
"pitcher_id": "689147",
"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": 92.09089035042419,
"release_spin_rate": 2549.1087104587878,
"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": 92.09089035042419,
"release_spin_rate": 2549.1087104587878,
"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.0909,
"release_spin_rate": 2549.1087,
"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.1333,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9523,
"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.805,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4901,
"prior_weight": 0.5099
},
"role": "pitcher",
"player_id": "689147",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 4.0,
"SO": 9.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 98.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.8,
"SO": 1.8,
"HR": 0.0,
"BF": 4.8,
"Pitches": 19.6
},
"rates": {
"ERA": 1.8,
"WHIP": 1.8,
"ER_per_IP": 0.2,
"H_per_IP": 1.0,
"BB_per_IP": 0.8,
"SO_per_IP": 1.8,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 3.0,
"H": 7.0,
"BB": 5.0,
"SO": 16.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 168.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.7,
"BB": 0.5,
"SO": 1.6,
"HR": 0.0,
"BF": 4.0,
"Pitches": 16.8
},
"rates": {
"ERA": 2.0,
"WHIP": 1.3333,
"ER_per_IP": 0.22222,
"H_per_IP": 0.77778,
"BB_per_IP": 0.55556,
"SO_per_IP": 1.77778,
"HR_per_IP": 0.0
}
},
"season": {
"games": 27,
"totals": {
"IP": 24.1,
"ER": 6.0,
"R": 7.0,
"H": 19.0,
"BB": 11.0,
"SO": 27.0,
"HR": 2.0,
"BF": 105.0,
"Pitches": 430.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2222,
"R": 0.2593,
"H": 0.7037,
"BB": 0.4074,
"SO": 1.0,
"HR": 0.0741,
"BF": 3.8889,
"Pitches": 15.9259
},
"rates": {
"ERA": 2.2192,
"WHIP": 1.2329,
"ER_per_IP": 0.24658,
"H_per_IP": 0.78082,
"BB_per_IP": 0.45205,
"SO_per_IP": 1.10959,
"HR_per_IP": 0.08219
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.233,
"predicted_H": 0.606,
"predicted_BB": 0.331,
"predicted_SO": 0.85,
"predicted_HR": 0.052,
"predicted_ERA": 3.1825,
"predicted_WHIP": 1.4206
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5654,
"form_weight": 0.4346,
"form_reliability": 0.4901,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.805,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4901,
"prior_weight": 0.5099
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.233,
"final": 0.1013,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.606,
"final": 0.8288,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.331,
"final": 0.1438,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.85,
"final": 0.9348,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.052,
"final": 0.0226,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.1825,
"final": 3.1825,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4206,
"final": 1.4206,
"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.202 | 0.000 | 0.000 | Hitting_2B | 0.202 | 0.000 | -0.202 | 0.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 4.280 | 4.000 | 7.000 | Hitting_AB | 3.891 | 3.000 | 0.109 | 1.000 |
| predicted_AVG | 0.235 | 0.000 | 0.286 | Hitting_AVG | 0.247 | 0.000 | -0.247 | 0.000 |
| predicted_BB | 0.613 | 0.000 | 1.000 | Hitting_BB | 0.613 | 2.000 | -0.613 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.010 | 0.000 | 2.000 | Hitting_H | 0.960 | 0.000 | -0.960 | 0.000 |
| predicted_HR | 0.270 | 0.000 | 1.000 | Hitting_HR | 0.399 | 0.000 | -0.399 | 0.000 |
| predicted_OBP | 0.357 | 0.000 | 0.375 | Hitting_OBP | 0.361 | 0.400 | -0.361 | -0.400 |
| predicted_R | 0.694 | 0.000 | 1.000 | Hitting_R | 0.694 | 1.000 | -0.694 | -1.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.750 | 0.000 | -0.750 | 0.000 |
| predicted_SLG | 0.475 | 0.000 | 0.714 | Hitting_SLG | 0.617 | 0.000 | -0.617 | 0.000 |
| predicted_SO | 1.536 | 0.000 | 3.000 | Hitting_SO | 1.536 | 1.000 | -1.536 | -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_SLG: 0.4750 -> 0.5180 (boost 0.0430, better) |
| Biggest Deboost | predicted_SO: 1.5360 -> 0.0000 (deboost -1.5360, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.2800 -> 7.1690 (boost 2.8890, 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.5071 -> 0.5180 (boost 0.0109, better) | predicted_OBP: 0.3699 -> 0.3621 (deboost -0.0078, 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_HR: 0.5296 -> 1.0000 (boost 0.4704, better) | predicted_2B: 0.2635 -> 0.0000 (deboost -0.2635, worse) | AB rounded to 7 (raw=7.17), rates preserved: AVG=0.252 HR/AB=0.074 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=22.0, weight=0.169, BvP AVG=0.273) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2033 -> 1.0000 (deboost -0.2033, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.5180 -> 0.7140 (boost 0.1960, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 7 | 0 | 7 | 1 | 6 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.7140 -> 0.5180 (deboost -0.1960, 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.202,
"predicted_3B": 0.02,
"predicted_AB": 4.28,
"predicted_AVG": 0.235,
"predicted_BB": 0.613,
"predicted_H": 1.01,
"predicted_HR": 0.27,
"predicted_OBP": 0.357,
"predicted_R": 0.694,
"predicted_RBI": 0.52,
"predicted_SLG": 0.475,
"predicted_SO": 1.536
},
"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.2635,
"predicted_3B": 0.0262,
"predicted_AB": 7.169,
"predicted_AVG": 0.2482,
"predicted_BB": 1.2382,
"predicted_H": 1.8295,
"predicted_HBP": 0.134,
"predicted_HR": 0.5408,
"predicted_OBP": 0.3699,
"predicted_R": 1.2232,
"predicted_RBI": 0.9696,
"predicted_SLG": 0.5071,
"predicted_SO": 2.8077
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.2635,
"delta": 0.0615,
"percent_delta": 0.3045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0262,
"delta": 0.0062,
"percent_delta": 0.31,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.28,
"after": 7.169,
"delta": 2.889,
"percent_delta": 0.675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2482,
"delta": 0.0132,
"percent_delta": 0.0562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.613,
"after": 1.2382,
"delta": 0.6252,
"percent_delta": 1.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.8295,
"delta": 0.8195,
"percent_delta": 0.8114,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.27,
"after": 0.5408,
"delta": 0.2708,
"percent_delta": 1.003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.357,
"after": 0.3699,
"delta": 0.0129,
"percent_delta": 0.0361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.694,
"after": 1.2232,
"delta": 0.5292,
"percent_delta": 0.7625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.9696,
"delta": 0.4496,
"percent_delta": 0.8646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.5071,
"delta": 0.0321,
"percent_delta": 0.0676,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.536,
"after": 2.8077,
"delta": 1.2717,
"percent_delta": 0.8279,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.28,
"after": 7.169,
"delta": 2.889,
"percent_delta": 0.675,
"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": 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.2635,
"predicted_3B": 0.0262,
"predicted_AB": 7.169,
"predicted_AVG": 0.2524,
"predicted_BB": 1.2335,
"predicted_H": 1.8092,
"predicted_HBP": 0.134,
"predicted_HR": 0.5296,
"predicted_OBP": 0.3621,
"predicted_R": 1.2033,
"predicted_RBI": 0.9538,
"predicted_SLG": 0.518,
"predicted_SO": 2.8184
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2635,
"after": 0.2635,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0262,
"after": 0.0262,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.169,
"after": 7.169,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2482,
"after": 0.2524,
"delta": 0.0042,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.2382,
"after": 1.2335,
"delta": -0.0047,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8295,
"after": 1.8092,
"delta": -0.0203,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.134,
"after": 0.134,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.5408,
"after": 0.5296,
"delta": -0.0112,
"percent_delta": -0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3699,
"after": 0.3621,
"delta": -0.0078,
"percent_delta": -0.0211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2232,
"after": 1.2033,
"delta": -0.0199,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9696,
"after": 0.9538,
"delta": -0.0158,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5071,
"after": 0.518,
"delta": 0.0109,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.8077,
"after": 2.8184,
"delta": 0.0107,
"percent_delta": 0.0038,
"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.5071,
"after": 0.518,
"delta": 0.0109,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3699,
"after": 0.3621,
"delta": -0.0078,
"percent_delta": -0.0211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.17), rates preserved: AVG=0.252 HR/AB=0.074",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2635,
"after": 0.0,
"delta": -0.2635,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0262,
"after": 0.0,
"delta": -0.0262,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.169,
"after": 7.0,
"delta": -0.169,
"percent_delta": -0.0236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2335,
"after": 1.0,
"delta": -0.2335,
"percent_delta": -0.1893,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8092,
"after": 2.0,
"delta": 0.1908,
"percent_delta": 0.1055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.134,
"after": 0.0,
"delta": -0.134,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.5296,
"after": 1.0,
"delta": 0.4704,
"percent_delta": 0.8882,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9538,
"after": 1.0,
"delta": 0.0462,
"percent_delta": 0.0484,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.8184,
"after": 3.0,
"delta": 0.1816,
"percent_delta": 0.0644,
"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_HR",
"before": 0.5296,
"after": 1.0,
"delta": 0.4704,
"percent_delta": 0.8882,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2635,
"after": 0.0,
"delta": -0.2635,
"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=22.0, weight=0.169, BvP AVG=0.273)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_RBI": 1.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": 7.0,
"after": 7.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": 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_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": 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": {
"model_expectation": 0.8308,
"bvp": 0.1692
},
"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": 7.0,
"predicted_BB": 1.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.2033,
"after": 1.0,
"delta": -0.2033,
"percent_delta": -0.169,
"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": 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_R",
"before": 1.2033,
"after": 1.0,
"delta": -0.2033,
"percent_delta": -0.169,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.714,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2524,
"after": 0.286,
"delta": 0.0336,
"percent_delta": 0.1331,
"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": 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_OBP",
"before": 0.3621,
"after": 0.375,
"delta": 0.0129,
"percent_delta": 0.0356,
"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.518,
"after": 0.714,
"delta": 0.196,
"percent_delta": 0.3784,
"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.518,
"after": 0.714,
"delta": 0.196,
"percent_delta": 0.3784,
"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": 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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 3.0,
"after": 0.0,
"delta": -3.0,
"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_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2524,
"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.3621,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.518,
"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.286,
"after": 0.2524,
"delta": -0.0336,
"percent_delta": -0.1176,
"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.375,
"after": 0.3621,
"delta": -0.0129,
"percent_delta": -0.0344,
"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.714,
"after": 0.518,
"delta": -0.196,
"percent_delta": -0.2745,
"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.714,
"after": 0.518,
"delta": -0.196,
"percent_delta": -0.2745,
"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.202,
"after": 0.0,
"delta": -0.202,
"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": 4.28,
"after": 4.0,
"delta": -0.28,
"percent_delta": -0.0654,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2524,
"delta": 0.0174,
"percent_delta": 0.074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.613,
"after": 0.0,
"delta": -0.613,
"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.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.357,
"after": 0.3621,
"delta": 0.0051,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.694,
"after": 0.0,
"delta": -0.694,
"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.475,
"after": 0.518,
"delta": 0.043,
"percent_delta": 0.0905,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.536,
"after": 0.0,
"delta": -1.536,
"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_SLG",
"before": 0.475,
"after": 0.518,
"delta": 0.043,
"percent_delta": 0.0905,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.536,
"after": 0.0,
"delta": -1.536,
"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.202 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 4.280 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.613 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.270 | - |
| predicted_OBP | 0.357 | - |
| predicted_R | 0.694 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.475 | - |
| predicted_SO | 1.536 | - |
Final model 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.264 | 0.061 |
| predicted_3B | 0.026 | 0.006 |
| predicted_AB | 7.169 | 2.889 |
| predicted_AVG | 0.248 | 0.013 |
| predicted_BB | 1.238 | 0.625 |
| predicted_H | 1.829 | 0.819 |
| predicted_HBP | 0.134 | - |
| predicted_HR | 0.541 | 0.271 |
| predicted_OBP | 0.370 | 0.013 |
| predicted_R | 1.223 | 0.529 |
| predicted_RBI | 0.970 | 0.450 |
| predicted_SLG | 0.507 | 0.032 |
| predicted_SO | 2.808 | 1.272 |
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.264 | 0.000 |
| predicted_3B | 0.026 | 0.000 |
| predicted_AB | 7.169 | 0.000 |
| predicted_AVG | 0.252 | 0.004 |
| predicted_BB | 1.234 | -0.005 |
| predicted_H | 1.809 | -0.020 |
| predicted_HBP | 0.134 | 0.000 |
| predicted_HR | 0.530 | -0.011 |
| predicted_OBP | 0.362 | -0.008 |
| predicted_R | 1.203 | -0.020 |
| predicted_RBI | 0.954 | -0.016 |
| predicted_SLG | 0.518 | 0.011 |
| predicted_SO | 2.818 | 0.011 |
AB rounded to 7 (raw=7.17), rates preserved: AVG=0.252 HR/AB=0.074
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 1.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 3.000 | - |
Sample-size BvP blend (BvP AB=22.0, weight=0.169, BvP AVG=0.273)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 3.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 3.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.264 |
| predicted_3B | 0.000 | -0.026 |
| predicted_AB | 7.000 | -0.169 |
| predicted_AVG | 0.286 | 0.034 |
| predicted_BB | 1.000 | -0.234 |
| predicted_H | 2.000 | 0.191 |
| predicted_HR | 1.000 | 0.470 |
| predicted_OBP | 0.375 | 0.013 |
| predicted_R | 1.000 | -0.203 |
| predicted_RBI | 1.000 | 0.046 |
| predicted_SLG | 0.714 | 0.196 |
| predicted_SO | 3.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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | -1.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 | -3.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 | 4.000 | 5.000 | 8.000 | 0.3158 | 0.4583 | 0.4737 | 0.3158 | 0.0526 | 0.0526 | 0.2632 | 0.4210 |
| last_10 | 0.20 | 10 | - | 37.000 | 10.000 | 0.000 | 0.000 | 2.000 | 3.000 | 5.000 | 8.000 | 17.000 | 0.2703 | 0.4000 | 0.4324 | 0.2703 | 0.0541 | 0.0811 | 0.2162 | 0.4595 |
| season | 0.60 | 61 | - | 965.000 | 238.000 | 50.000 | 5.000 | 99.000 | 186.000 | 172.000 | 152.000 | 381.000 | 0.2466 | 0.3606 | 0.6166 | 0.2466 | 0.1026 | 0.1928 | 0.1575 | 0.3948 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3410 |
| predicted_3B | 0.0340 |
| predicted_AB | 10.8090 |
| predicted_AVG | 0.2648 |
| predicted_BB | 2.0260 |
| predicted_H | 2.8620 |
| predicted_HBP | 0.1340 |
| predicted_HR | 0.8820 |
| predicted_OBP | 0.3861 |
| predicted_R | 1.8900 |
| predicted_RBI | 1.5360 |
| predicted_SLG | 0.5475 |
| predicted_SO | 4.4100 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2020 | 0.3410 | 0.2635 | model_form_blend |
| predicted_3B | 0.0200 | 0.0340 | 0.0262 | model_form_blend |
| predicted_AB | 4.2800 | 10.8090 | 7.1690 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2648 | 0.2482 | model_form_blend |
| predicted_BB | 0.6130 | 2.0260 | 1.2382 | model_form_blend |
| predicted_H | 1.0100 | 2.8620 | 1.8295 | model_form_blend |
| predicted_HBP | - | 0.1340 | 0.1340 | form_only |
| predicted_HR | 0.2700 | 0.8820 | 0.5408 | model_form_blend |
| predicted_OBP | 0.3570 | 0.3861 | 0.3699 | model_form_blend |
| predicted_R | 0.6940 | 1.8900 | 1.2232 | model_form_blend |
| predicted_RBI | 0.5200 | 1.5360 | 0.9696 | model_form_blend |
| predicted_SLG | 0.4750 | 0.5475 | 0.5071 | model_form_blend |
| predicted_SO | 1.5360 | 4.4100 | 2.8077 | 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 | 248 |
| Season rows before report date | 248 |
| Report year | 2026 |
| Profile rows used | 248 |
| 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 | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 2 |
| 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 | 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 | 20260607_CHW@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-07 |
| sl_k_percent | 34.1 |
| sl_bb_percent | 14.3 |
| sl_woba | 0.401 |
| sl_xwoba | 0.378 |
| sl_xba | 0.235 |
| sl_xslg | 0.53 |
| sl_sweet_spot_percent | 37.9 |
| sl_barrel_batted_rate | 22.1 |
| sl_hard_hit_percent | 50.7 |
| sl_exit_velocity_avg | 93.1 |
| sl_launch_angle_avg | 21.7 |
| sl_whiff_percent | 33.7 |
| 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.156 | 0.000 | 0.000 | Hitting_2B | 0.156 | 1.000 | -0.156 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.960 | 4.000 | 6.000 | Hitting_AB | 3.761 | 3.000 | 0.239 | 1.000 |
| predicted_AVG | 0.245 | 0.500 | 0.333 | Hitting_AVG | 0.220 | 0.667 | 0.280 | -0.167 |
| predicted_BB | 0.294 | 0.000 | 0.000 | Hitting_BB | 0.294 | 1.000 | -0.294 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.970 | 2.000 | 2.000 | Hitting_H | 0.826 | 2.000 | 1.174 | 0.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.087 | 0.000 | -0.087 | 0.000 |
| predicted_OBP | 0.318 | 0.500 | 0.333 | Hitting_OBP | 0.278 | 0.750 | 0.222 | -0.250 |
| predicted_R | 0.321 | 1.000 | 1.000 | Hitting_R | 0.321 | 1.000 | 0.679 | 0.000 |
| predicted_RBI | 0.600 | 0.000 | 1.000 | Hitting_RBI | 0.486 | 2.000 | -0.486 | -2.000 |
| predicted_SLG | 0.415 | 0.500 | 0.333 | Hitting_SLG | 0.330 | 1.000 | 0.170 | -0.500 |
| predicted_SO | 0.560 | 0.000 | 1.000 | Hitting_SO | 0.560 | 0.000 | -0.560 | 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_H: 0.9700 -> 2.0000 (boost 1.0300, better) |
| Biggest Deboost | predicted_RBI: 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.9600 -> 6.3578 (boost 2.3978, 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.4235 -> 0.4112 (deboost -0.0123, 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: 1.6551 -> 2.0000 (boost 0.3449, better) | predicted_BB: 0.4452 -> 0.0000 (deboost -0.4452, worse) | AB rounded to 6 (raw=6.36), rates preserved: AVG=0.260 HR/AB=0.033 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=27.0, weight=0.189, BvP AVG=0.370) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5407 -> 1.0000 (boost 0.4593, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2603 -> 0.3330 (boost 0.0727, better) | predicted_SLG: 0.4112 -> 0.3330 (deboost -0.0782, 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_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4112 (boost 0.0782, better) | predicted_AVG: 0.3330 -> 0.2603 (deboost -0.0727, 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.156,
"predicted_3B": 0.0,
"predicted_AB": 3.96,
"predicted_AVG": 0.245,
"predicted_BB": 0.294,
"predicted_H": 0.97,
"predicted_HR": 0.13,
"predicted_OBP": 0.318,
"predicted_R": 0.321,
"predicted_RBI": 0.6,
"predicted_SLG": 0.415,
"predicted_SO": 0.56
},
"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.3203,
"predicted_3B": 0.0004,
"predicted_AB": 6.3578,
"predicted_AVG": 0.2574,
"predicted_BB": 0.4469,
"predicted_H": 1.6737,
"predicted_HBP": 0.056,
"predicted_HR": 0.2172,
"predicted_OBP": 0.3196,
"predicted_R": 0.5497,
"predicted_RBI": 1.0648,
"predicted_SLG": 0.4235,
"predicted_SO": 1.0381
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.156,
"after": 0.3203,
"delta": 0.1643,
"percent_delta": 1.0532,
"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": 3.96,
"after": 6.3578,
"delta": 2.3978,
"percent_delta": 0.6055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2574,
"delta": 0.0124,
"percent_delta": 0.0506,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.294,
"after": 0.4469,
"delta": 0.1529,
"percent_delta": 0.5201,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 1.6737,
"delta": 0.7037,
"percent_delta": 0.7255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2172,
"delta": 0.0872,
"percent_delta": 0.6708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.3196,
"delta": 0.0016,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.321,
"after": 0.5497,
"delta": 0.2287,
"percent_delta": 0.7125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 1.0648,
"delta": 0.4648,
"percent_delta": 0.7747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.415,
"after": 0.4235,
"delta": 0.0085,
"percent_delta": 0.0205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.56,
"after": 1.0381,
"delta": 0.4781,
"percent_delta": 0.8537,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.96,
"after": 6.3578,
"delta": 2.3978,
"percent_delta": 0.6055,
"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": 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.3203,
"predicted_3B": 0.0004,
"predicted_AB": 6.3578,
"predicted_AVG": 0.2603,
"predicted_BB": 0.4452,
"predicted_H": 1.6551,
"predicted_HBP": 0.056,
"predicted_HR": 0.2127,
"predicted_OBP": 0.3087,
"predicted_R": 0.5407,
"predicted_RBI": 1.0474,
"predicted_SLG": 0.4112,
"predicted_SO": 1.042
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3203,
"after": 0.3203,
"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": 6.3578,
"after": 6.3578,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2574,
"after": 0.2603,
"delta": 0.0029,
"percent_delta": 0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4469,
"after": 0.4452,
"delta": -0.0017,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6737,
"after": 1.6551,
"delta": -0.0186,
"percent_delta": -0.0111,
"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.2172,
"after": 0.2127,
"delta": -0.0045,
"percent_delta": -0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3196,
"after": 0.3087,
"delta": -0.0109,
"percent_delta": -0.0341,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5497,
"after": 0.5407,
"delta": -0.009,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0648,
"after": 1.0474,
"delta": -0.0174,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4235,
"after": 0.4112,
"delta": -0.0123,
"percent_delta": -0.029,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0381,
"after": 1.042,
"delta": 0.0039,
"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_SLG",
"before": 0.4235,
"after": 0.4112,
"delta": -0.0123,
"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 6 (raw=6.36), rates preserved: AVG=0.260 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.3203,
"after": 0.0,
"delta": -0.3203,
"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": 6.3578,
"after": 6.0,
"delta": -0.3578,
"percent_delta": -0.0563,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4452,
"after": 0.0,
"delta": -0.4452,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6551,
"after": 2.0,
"delta": 0.3449,
"percent_delta": 0.2084,
"direction": "boost",
"projection_effect": "better",
"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.2127,
"after": 0.0,
"delta": -0.2127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0474,
"after": 1.0,
"delta": -0.0474,
"percent_delta": -0.0453,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.042,
"after": 1.0,
"delta": -0.042,
"percent_delta": -0.0403,
"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": 1.6551,
"after": 2.0,
"delta": 0.3449,
"percent_delta": 0.2084,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4452,
"after": 0.0,
"delta": -0.4452,
"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=27.0, weight=0.189, BvP AVG=0.370)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 0.0,
"predicted_H": 2.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": 6.0,
"after": 6.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": 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_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.8105,
"bvp": 0.1895
},
"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": 6.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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 0.5407,
"after": 1.0,
"delta": 0.4593,
"percent_delta": 0.8495,
"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.5407,
"after": 1.0,
"delta": 0.4593,
"percent_delta": 0.8495,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 2.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2603,
"after": 0.333,
"delta": 0.0727,
"percent_delta": 0.2793,
"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": 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_OBP",
"before": 0.3087,
"after": 0.333,
"delta": 0.0243,
"percent_delta": 0.0787,
"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.4112,
"after": 0.333,
"delta": -0.0782,
"percent_delta": -0.1902,
"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.2603,
"after": 0.333,
"delta": 0.0727,
"percent_delta": 0.2793,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4112,
"after": 0.333,
"delta": -0.0782,
"percent_delta": -0.1902,
"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": 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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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_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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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.2603,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3087,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4112,
"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.2603,
"delta": -0.0727,
"percent_delta": -0.2182,
"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.3087,
"delta": -0.0243,
"percent_delta": -0.0729,
"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.4112,
"delta": 0.0782,
"percent_delta": 0.2348,
"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.4112,
"delta": 0.0782,
"percent_delta": 0.2348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2603,
"delta": -0.0727,
"percent_delta": -0.2182,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"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.245,
"after": 0.2603,
"delta": 0.0153,
"percent_delta": 0.0624,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.294,
"after": 0.0,
"delta": -0.294,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.3087,
"delta": -0.0093,
"percent_delta": -0.0292,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.321,
"after": 1.0,
"delta": 0.679,
"percent_delta": 2.1153,
"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.415,
"after": 0.4112,
"delta": -0.0038,
"percent_delta": -0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.56,
"after": 0.0,
"delta": -0.56,
"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_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_RBI",
"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.156 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.960 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.294 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.318 | - |
| predicted_R | 0.321 | - |
| predicted_RBI | 0.600 | - |
| predicted_SLG | 0.415 | - |
| predicted_SO | 0.560 | - |
Final model 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.320 | 0.164 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.358 | 2.398 |
| predicted_AVG | 0.257 | 0.012 |
| predicted_BB | 0.447 | 0.153 |
| predicted_H | 1.674 | 0.704 |
| predicted_HBP | 0.056 | - |
| predicted_HR | 0.217 | 0.087 |
| predicted_OBP | 0.320 | 0.002 |
| predicted_R | 0.550 | 0.229 |
| predicted_RBI | 1.065 | 0.465 |
| predicted_SLG | 0.423 | 0.009 |
| predicted_SO | 1.038 | 0.478 |
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.320 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.358 | 0.000 |
| predicted_AVG | 0.260 | 0.003 |
| predicted_BB | 0.445 | -0.002 |
| predicted_H | 1.655 | -0.019 |
| predicted_HBP | 0.056 | 0.000 |
| predicted_HR | 0.213 | -0.005 |
| predicted_OBP | 0.309 | -0.011 |
| predicted_R | 0.541 | -0.009 |
| predicted_RBI | 1.047 | -0.017 |
| predicted_SLG | 0.411 | -0.012 |
| predicted_SO | 1.042 | 0.004 |
AB rounded to 6 (raw=6.36), rates preserved: AVG=0.260 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 0.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=27.0, weight=0.189, BvP AVG=0.370)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 2.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 | 6.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.320 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.358 |
| predicted_AVG | 0.333 | 0.073 |
| predicted_BB | 0.000 | -0.445 |
| predicted_H | 2.000 | 0.345 |
| predicted_HR | 0.000 | -0.213 |
| predicted_OBP | 0.333 | 0.024 |
| predicted_R | 1.000 | 0.459 |
| predicted_RBI | 1.000 | -0.047 |
| predicted_SLG | 0.333 | -0.078 |
| predicted_SO | 1.000 | -0.042 |
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 | -2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.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 | - | 19.000 | 8.000 | 2.000 | 0.000 | 1.000 | 6.000 | 2.000 | 1.000 | 5.000 | 0.4211 | 0.4500 | 0.6842 | 0.4210 | 0.0526 | 0.3158 | 0.0526 | 0.2632 |
| last_10 | 0.20 | 10 | - | 38.000 | 11.000 | 2.000 | 0.000 | 2.000 | 7.000 | 3.000 | 2.000 | 6.000 | 0.2895 | 0.3250 | 0.5000 | 0.2895 | 0.0526 | 0.1842 | 0.0526 | 0.1579 |
| season | 0.60 | 61 | - | 820.000 | 180.000 | 34.000 | 0.000 | 19.000 | 106.000 | 70.000 | 64.000 | 122.000 | 0.2195 | 0.2781 | 0.3305 | 0.2195 | 0.0232 | 0.1293 | 0.0780 | 0.1488 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5290 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.4020 |
| predicted_AVG | 0.2731 |
| predicted_BB | 0.6410 |
| predicted_H | 2.5670 |
| predicted_HBP | 0.0560 |
| predicted_HR | 0.3280 |
| predicted_OBP | 0.3216 |
| predicted_R | 0.8400 |
| predicted_RBI | 1.6550 |
| predicted_SLG | 0.4343 |
| predicted_SO | 1.6450 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1560 | 0.5290 | 0.3203 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9600 | 9.4020 | 6.3578 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2731 | 0.2574 | model_form_blend |
| predicted_BB | 0.2940 | 0.6410 | 0.4469 | model_form_blend |
| predicted_H | 0.9700 | 2.5670 | 1.6737 | model_form_blend |
| predicted_HBP | - | 0.0560 | 0.0560 | form_only |
| predicted_HR | 0.1300 | 0.3280 | 0.2172 | model_form_blend |
| predicted_OBP | 0.3180 | 0.3216 | 0.3196 | model_form_blend |
| predicted_R | 0.3210 | 0.8400 | 0.5497 | model_form_blend |
| predicted_RBI | 0.6000 | 1.6550 | 1.0648 | model_form_blend |
| predicted_SLG | 0.4150 | 0.4343 | 0.4235 | model_form_blend |
| predicted_SO | 0.5600 | 1.6450 | 1.0381 | 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 | 218 |
| 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.22 |
| 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 | 1 |
| 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 | 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 | 3B |
| gameID | 20260607_CHW@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-07 |
| sl_k_percent | 14.3 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.285 |
| sl_xwoba | 0.295 |
| sl_xba | 0.244 |
| sl_xslg | 0.354 |
| sl_sweet_spot_percent | 35.6 |
| sl_barrel_batted_rate | 3.7 |
| sl_hard_hit_percent | 42.4 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 11.1 |
| sl_whiff_percent | 17.1 |
| 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.169 | 0.000 | 0.000 | Hitting_2B | 0.168 | 1.000 | -0.168 | -1.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 | 8.000 | Hitting_AB | 4.280 | 5.000 | -0.280 | -1.000 |
| predicted_AVG | 0.225 | 0.000 | 0.250 | Hitting_AVG | 0.233 | 0.400 | -0.233 | -0.400 |
| predicted_BB | 0.285 | 0.000 | 1.000 | Hitting_BB | 0.288 | 0.000 | -0.288 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_H | 1.060 | 0.000 | 2.000 | Hitting_H | 0.996 | 2.000 | -0.996 | -2.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.136 | 0.000 | -0.136 | 0.000 |
| predicted_OBP | 0.297 | 0.000 | 0.333 | Hitting_OBP | 0.280 | 0.400 | -0.280 | -0.400 |
| predicted_R | 0.683 | 0.000 | 1.000 | Hitting_R | 0.680 | 1.000 | -0.680 | -1.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.364 | 0.000 | -0.364 | 0.000 |
| predicted_SLG | 0.361 | 0.000 | 0.250 | Hitting_SLG | 0.367 | 0.600 | -0.367 | -0.600 |
| predicted_SO | 0.984 | 1.000 | 2.000 | Hitting_SO | 0.980 | 1.000 | 0.020 | 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 | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AVG: 0.2250 -> 0.2321 (boost 0.0071, better) |
| Biggest Deboost | predicted_H: 1.0600 -> 0.0000 (deboost -1.0600, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 4.7200 -> 7.8306 (boost 3.1106, 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.3570 -> 0.3405 (deboost -0.0165, 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.5206 -> 1.0000 (boost 0.4794, better) | predicted_2B: 0.2960 -> 0.0000 (deboost -0.2960, worse) | AB rounded to 8 (raw=7.83), rates preserved: AVG=0.232 HR/AB=0.023 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.286) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2152 -> 1.0000 (deboost -0.2152, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2800 -> 0.3330 (boost 0.0530, better) | predicted_SLG: 0.3405 -> 0.2500 (deboost -0.0905, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3405 (boost 0.0905, better) | predicted_OBP: 0.3330 -> 0.2800 (deboost -0.0530, worse) | 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.169,
"predicted_3B": 0.0,
"predicted_AB": 4.72,
"predicted_AVG": 0.225,
"predicted_BB": 0.285,
"predicted_H": 1.06,
"predicted_HR": 0.11,
"predicted_OBP": 0.297,
"predicted_R": 0.683,
"predicted_RBI": 0.43,
"predicted_SLG": 0.361,
"predicted_SO": 0.984
},
"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.296,
"predicted_3B": 0.0004,
"predicted_AB": 7.8306,
"predicted_AVG": 0.2316,
"predicted_BB": 0.5226,
"predicted_H": 1.838,
"predicted_HBP": 0.003,
"predicted_HR": 0.1879,
"predicted_OBP": 0.2935,
"predicted_R": 1.2353,
"predicted_RBI": 0.7185,
"predicted_SLG": 0.357,
"predicted_SO": 1.6792
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.169,
"after": 0.296,
"delta": 0.127,
"percent_delta": 0.7515,
"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.72,
"after": 7.8306,
"delta": 3.1106,
"percent_delta": 0.659,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2316,
"delta": 0.0066,
"percent_delta": 0.0293,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.285,
"after": 0.5226,
"delta": 0.2376,
"percent_delta": 0.8337,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.06,
"after": 1.838,
"delta": 0.778,
"percent_delta": 0.734,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1879,
"delta": 0.0779,
"percent_delta": 0.7082,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.2935,
"delta": -0.0035,
"percent_delta": -0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.683,
"after": 1.2353,
"delta": 0.5523,
"percent_delta": 0.8086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.7185,
"delta": 0.2885,
"percent_delta": 0.6709,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.357,
"delta": -0.004,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.984,
"after": 1.6792,
"delta": 0.6952,
"percent_delta": 0.7065,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.72,
"after": 7.8306,
"delta": 3.1106,
"percent_delta": 0.659,
"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.296,
"predicted_3B": 0.0004,
"predicted_AB": 7.8306,
"predicted_AVG": 0.2321,
"predicted_BB": 0.5206,
"predicted_H": 1.8176,
"predicted_HBP": 0.003,
"predicted_HR": 0.184,
"predicted_OBP": 0.28,
"predicted_R": 1.2152,
"predicted_RBI": 0.7068,
"predicted_SLG": 0.3405,
"predicted_SO": 1.6856
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.296,
"after": 0.296,
"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": 7.8306,
"after": 7.8306,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2316,
"after": 0.2321,
"delta": 0.0005,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5226,
"after": 0.5206,
"delta": -0.002,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.838,
"after": 1.8176,
"delta": -0.0204,
"percent_delta": -0.0111,
"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.1879,
"after": 0.184,
"delta": -0.0039,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2935,
"after": 0.28,
"delta": -0.0135,
"percent_delta": -0.046,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2353,
"after": 1.2152,
"delta": -0.0201,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7185,
"after": 0.7068,
"delta": -0.0117,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3405,
"delta": -0.0165,
"percent_delta": -0.0462,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6792,
"after": 1.6856,
"delta": 0.0064,
"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_SLG",
"before": 0.357,
"after": 0.3405,
"delta": -0.0165,
"percent_delta": -0.0462,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=7.83), rates preserved: AVG=0.232 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.296,
"after": 0.0,
"delta": -0.296,
"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": 7.8306,
"after": 8.0,
"delta": 0.1694,
"percent_delta": 0.0216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5206,
"after": 1.0,
"delta": 0.4794,
"percent_delta": 0.9209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8176,
"after": 2.0,
"delta": 0.1824,
"percent_delta": 0.1004,
"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.184,
"after": 0.0,
"delta": -0.184,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7068,
"after": 1.0,
"delta": 0.2932,
"percent_delta": 0.4148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6856,
"after": 2.0,
"delta": 0.3144,
"percent_delta": 0.1865,
"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.5206,
"after": 1.0,
"delta": 0.4794,
"percent_delta": 0.9209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.296,
"after": 0.0,
"delta": -0.296,
"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.286)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 8.0,
"after": 8.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": 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_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": 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": {
"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": 8.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": 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": 8.0,
"after": 8.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": 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_R",
"before": 1.2152,
"after": 1.0,
"delta": -0.2152,
"percent_delta": -0.1771,
"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": 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_R",
"before": 1.2152,
"after": 1.0,
"delta": -0.2152,
"percent_delta": -0.1771,
"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": 8.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"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": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2321,
"after": 0.25,
"delta": 0.0179,
"percent_delta": 0.0771,
"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": 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_OBP",
"before": 0.28,
"after": 0.333,
"delta": 0.053,
"percent_delta": 0.1893,
"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.3405,
"after": 0.25,
"delta": -0.0905,
"percent_delta": -0.2658,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.28,
"after": 0.333,
"delta": 0.053,
"percent_delta": 0.1893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3405,
"after": 0.25,
"delta": -0.0905,
"percent_delta": -0.2658,
"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": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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.2321,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.28,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3405,
"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.2321,
"delta": -0.0179,
"percent_delta": -0.0715,
"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.28,
"delta": -0.053,
"percent_delta": -0.1592,
"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.3405,
"delta": 0.0905,
"percent_delta": 0.362,
"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.3405,
"delta": 0.0905,
"percent_delta": 0.362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.28,
"delta": -0.053,
"percent_delta": -0.1592,
"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.169,
"after": 0.0,
"delta": -0.169,
"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.225,
"after": 0.2321,
"delta": 0.0071,
"percent_delta": 0.0316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.285,
"after": 0.0,
"delta": -0.285,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.06,
"after": 0.0,
"delta": -1.06,
"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.297,
"after": 0.28,
"delta": -0.017,
"percent_delta": -0.0572,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.683,
"after": 0.0,
"delta": -0.683,
"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.361,
"after": 0.3405,
"delta": -0.0205,
"percent_delta": -0.0568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.984,
"after": 1.0,
"delta": 0.016,
"percent_delta": 0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2321,
"delta": 0.0071,
"percent_delta": 0.0316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.06,
"after": 0.0,
"delta": -1.06,
"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.169 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.720 | - |
| predicted_AVG | 0.225 | - |
| predicted_BB | 0.285 | - |
| predicted_H | 1.060 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.297 | - |
| predicted_R | 0.683 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.361 | - |
| predicted_SO | 0.984 | - |
Final model 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.296 | 0.127 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.831 | 3.111 |
| predicted_AVG | 0.232 | 0.007 |
| predicted_BB | 0.523 | 0.238 |
| predicted_H | 1.838 | 0.778 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.188 | 0.078 |
| predicted_OBP | 0.293 | -0.004 |
| predicted_R | 1.235 | 0.552 |
| predicted_RBI | 0.719 | 0.289 |
| predicted_SLG | 0.357 | -0.004 |
| predicted_SO | 1.679 | 0.695 |
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.296 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.831 | 0.000 |
| predicted_AVG | 0.232 | 0.001 |
| predicted_BB | 0.521 | -0.002 |
| predicted_H | 1.818 | -0.020 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.184 | -0.004 |
| predicted_OBP | 0.280 | -0.013 |
| predicted_R | 1.215 | -0.020 |
| predicted_RBI | 0.707 | -0.012 |
| predicted_SLG | 0.341 | -0.016 |
| predicted_SO | 1.686 | 0.006 |
AB rounded to 8 (raw=7.83), rates preserved: AVG=0.232 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.286)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.296 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 8.000 | 0.169 |
| predicted_AVG | 0.250 | 0.018 |
| predicted_BB | 1.000 | 0.479 |
| predicted_H | 2.000 | 0.182 |
| predicted_HR | 0.000 | -0.184 |
| predicted_OBP | 0.333 | 0.053 |
| predicted_R | 1.000 | -0.215 |
| predicted_RBI | 1.000 | 0.293 |
| predicted_SLG | 0.250 | -0.091 |
| predicted_SO | 2.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 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -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 | 2.000 | 4.000 | 2.000 | 4.000 | 0.2500 | 0.3182 | 0.3000 | 0.2500 | 0.0000 | 0.1000 | 0.1000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 40.000 | 10.000 | 1.000 | 0.000 | 1.000 | 4.000 | 6.000 | 2.000 | 8.000 | 0.2500 | 0.2857 | 0.3500 | 0.2500 | 0.0250 | 0.1000 | 0.0500 | 0.2000 |
| season | 0.60 | 62 | - | 1070.000 | 249.000 | 42.000 | 0.000 | 34.000 | 91.000 | 170.000 | 71.000 | 245.000 | 0.2327 | 0.2795 | 0.3673 | 0.2327 | 0.0318 | 0.0851 | 0.0664 | 0.2290 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4560 |
| predicted_3B | 0.0010 |
| predicted_AB | 11.7490 |
| predicted_AVG | 0.2399 |
| predicted_BB | 0.8220 |
| predicted_H | 2.8180 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.2860 |
| predicted_OBP | 0.2891 |
| predicted_R | 1.9310 |
| predicted_RBI | 1.0820 |
| predicted_SLG | 0.3519 |
| predicted_SO | 2.5550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1690 | 0.4560 | 0.2960 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.7200 | 11.7490 | 7.8306 | model_form_blend |
| predicted_AVG | 0.2250 | 0.2399 | 0.2316 | model_form_blend |
| predicted_BB | 0.2850 | 0.8220 | 0.5226 | model_form_blend |
| predicted_H | 1.0600 | 2.8180 | 1.8380 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1100 | 0.2860 | 0.1879 | model_form_blend |
| predicted_OBP | 0.2970 | 0.2891 | 0.2935 | model_form_blend |
| predicted_R | 0.6830 | 1.9310 | 1.2353 | model_form_blend |
| predicted_RBI | 0.4300 | 1.0820 | 0.7185 | model_form_blend |
| predicted_SLG | 0.3610 | 0.3519 | 0.3570 | model_form_blend |
| predicted_SO | 0.9840 | 2.5550 | 1.6792 | 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 | 250 |
| Season rows before report date | 250 |
| Report year | 2026 |
| Profile rows used | 249 |
| 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.233 |
| 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 | 1 |
| 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 | SS |
| gameID | 20260607_CHW@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-07 |
| sl_k_percent | 21.6 |
| sl_bb_percent | 6.7 |
| sl_woba | 0.28 |
| sl_xwoba | 0.29 |
| sl_xba | 0.241 |
| sl_xslg | 0.364 |
| sl_sweet_spot_percent | 33.2 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 40.1 |
| sl_exit_velocity_avg | 89.3 |
| sl_launch_angle_avg | 10.6 |
| sl_whiff_percent | 26.5 |
| sl_swing_percent | 51.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 | 1.000 | 0.000 | Hitting_2B | 0.188 | 1.000 | 0.812 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.870 | 4.000 | 6.000 | Hitting_AB | 3.612 | 4.000 | 0.388 | 0.000 |
| predicted_AVG | 0.247 | 0.500 | 0.333 | Hitting_AVG | 0.276 | 0.500 | 0.224 | 0.000 |
| predicted_BB | 0.661 | 0.000 | 1.000 | Hitting_BB | 0.658 | 1.000 | -0.658 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_H | 0.950 | 2.000 | 2.000 | Hitting_H | 0.996 | 2.000 | 1.004 | 0.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.242 | 0.000 | -0.242 | 0.000 |
| predicted_OBP | 0.357 | 0.500 | 0.429 | Hitting_OBP | 0.384 | 0.600 | 0.116 | -0.100 |
| predicted_R | 0.644 | 1.000 | 1.000 | Hitting_R | 0.642 | 2.000 | 0.358 | -1.000 |
| predicted_RBI | 0.510 | 1.000 | 1.000 | Hitting_RBI | 0.629 | 1.000 | 0.371 | 0.000 |
| predicted_SLG | 0.444 | 0.750 | 0.333 | Hitting_SLG | 0.537 | 0.750 | 0.213 | 0.000 |
| predicted_SO | 0.766 | 1.000 | 1.000 | Hitting_SO | 0.762 | 0.000 | 0.238 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 8 |
| Deboosted Metrics | 2 |
| Better Metrics | 7 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_H: 0.9500 -> 2.0000 (boost 1.0500, better) |
| Biggest Deboost | predicted_BB: 0.6610 -> 0.0000 (deboost -0.6610, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.8700 -> 6.3200 (boost 2.4500, 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_OBP: 0.3710 -> 0.3763 (boost 0.0053, better) | predicted_SLG: 0.4512 -> 0.4431 (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 | 2 | 5 | 3 | 4 | predicted_H: 1.6249 -> 2.0000 (boost 0.3751, better) | predicted_SO: 1.3884 -> 1.0000 (deboost -0.3884, better) | AB rounded to 6 (raw=6.32), rates preserved: AVG=0.257 HR/AB=0.043 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=47.0, weight=0.244, BvP AVG=0.319) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1532 -> 1.0000 (deboost -0.1532, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2571 -> 0.3330 (boost 0.0759, better) | predicted_SLG: 0.4431 -> 0.3330 (deboost -0.1101, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 1 | 2 | 1 | 2 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4431 (boost 0.1101, better) | predicted_AVG: 0.3330 -> 0.2571 (deboost -0.0759, 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.188,
"predicted_3B": 0.017,
"predicted_AB": 3.87,
"predicted_AVG": 0.247,
"predicted_BB": 0.661,
"predicted_H": 0.95,
"predicted_HR": 0.16,
"predicted_OBP": 0.357,
"predicted_R": 0.644,
"predicted_RBI": 0.51,
"predicted_SLG": 0.444,
"predicted_SO": 0.766
},
"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.3095,
"predicted_3B": 0.021,
"predicted_AB": 6.32,
"predicted_AVG": 0.2561,
"predicted_BB": 1.2123,
"predicted_H": 1.6431,
"predicted_HBP": 0.002,
"predicted_HR": 0.2806,
"predicted_OBP": 0.371,
"predicted_R": 1.1723,
"predicted_RBI": 0.8709,
"predicted_SLG": 0.4512,
"predicted_SO": 1.3831
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.3095,
"delta": 0.1215,
"percent_delta": 0.6463,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.021,
"delta": 0.004,
"percent_delta": 0.2353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.87,
"after": 6.32,
"delta": 2.45,
"percent_delta": 0.6331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2561,
"delta": 0.0091,
"percent_delta": 0.0368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.661,
"after": 1.2123,
"delta": 0.5513,
"percent_delta": 0.834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 1.6431,
"delta": 0.6931,
"percent_delta": 0.7296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2806,
"delta": 0.1206,
"percent_delta": 0.7538,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.357,
"after": 0.371,
"delta": 0.014,
"percent_delta": 0.0392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.644,
"after": 1.1723,
"delta": 0.5283,
"percent_delta": 0.8203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.8709,
"delta": 0.3609,
"percent_delta": 0.7076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.444,
"after": 0.4512,
"delta": 0.0072,
"percent_delta": 0.0162,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.766,
"after": 1.3831,
"delta": 0.6171,
"percent_delta": 0.8056,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.87,
"after": 6.32,
"delta": 2.45,
"percent_delta": 0.6331,
"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": 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.3095,
"predicted_3B": 0.021,
"predicted_AB": 6.32,
"predicted_AVG": 0.2571,
"predicted_BB": 1.2077,
"predicted_H": 1.6249,
"predicted_HBP": 0.002,
"predicted_HR": 0.2748,
"predicted_OBP": 0.3763,
"predicted_R": 1.1532,
"predicted_RBI": 0.8567,
"predicted_SLG": 0.4431,
"predicted_SO": 1.3884
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3095,
"after": 0.3095,
"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": 6.32,
"after": 6.32,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2561,
"after": 0.2571,
"delta": 0.001,
"percent_delta": 0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.2123,
"after": 1.2077,
"delta": -0.0046,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6431,
"after": 1.6249,
"delta": -0.0182,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.002,
"after": 0.002,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2806,
"after": 0.2748,
"delta": -0.0058,
"percent_delta": -0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.371,
"after": 0.3763,
"delta": 0.0053,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1723,
"after": 1.1532,
"delta": -0.0191,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8709,
"after": 0.8567,
"delta": -0.0142,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4512,
"after": 0.4431,
"delta": -0.0081,
"percent_delta": -0.018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3831,
"after": 1.3884,
"delta": 0.0053,
"percent_delta": 0.0038,
"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.371,
"after": 0.3763,
"delta": 0.0053,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4512,
"after": 0.4431,
"delta": -0.0081,
"percent_delta": -0.018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.32), rates preserved: AVG=0.257 HR/AB=0.043",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3095,
"after": 0.0,
"delta": -0.3095,
"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": 6.32,
"after": 6.0,
"delta": -0.32,
"percent_delta": -0.0506,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2077,
"after": 1.0,
"delta": -0.2077,
"percent_delta": -0.172,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6249,
"after": 2.0,
"delta": 0.3751,
"percent_delta": 0.2308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.002,
"after": 0.0,
"delta": -0.002,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2748,
"after": 0.0,
"delta": -0.2748,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8567,
"after": 1.0,
"delta": 0.1433,
"percent_delta": 0.1673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3884,
"after": 1.0,
"delta": -0.3884,
"percent_delta": -0.2797,
"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": 1.6249,
"after": 2.0,
"delta": 0.3751,
"percent_delta": 0.2308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3884,
"after": 1.0,
"delta": -0.3884,
"percent_delta": -0.2797,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=47.0, weight=0.244, BvP AVG=0.319)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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": 6.0,
"after": 6.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": 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_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.7558,
"bvp": 0.2442
},
"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": 6.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 1.1532,
"after": 1.0,
"delta": -0.1532,
"percent_delta": -0.1328,
"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": 1.1532,
"after": 1.0,
"delta": -0.1532,
"percent_delta": -0.1328,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2571,
"after": 0.333,
"delta": 0.0759,
"percent_delta": 0.2952,
"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": 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_OBP",
"before": 0.3763,
"after": 0.429,
"delta": 0.0527,
"percent_delta": 0.14,
"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.4431,
"after": 0.333,
"delta": -0.1101,
"percent_delta": -0.2485,
"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.2571,
"after": 0.333,
"delta": 0.0759,
"percent_delta": 0.2952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4431,
"after": 0.333,
"delta": -0.1101,
"percent_delta": -0.2485,
"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": 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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 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_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": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2571,
"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.3763,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4431,
"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.2571,
"delta": -0.0759,
"percent_delta": -0.2279,
"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.429,
"after": 0.3763,
"delta": -0.0527,
"percent_delta": -0.1229,
"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.4431,
"delta": 0.1101,
"percent_delta": 0.3308,
"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.4431,
"delta": 0.1101,
"percent_delta": 0.3308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2571,
"delta": -0.0759,
"percent_delta": -0.2279,
"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": 1.0,
"delta": 0.812,
"percent_delta": 4.3191,
"direction": "boost",
"projection_effect": "better",
"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.87,
"after": 4.0,
"delta": 0.13,
"percent_delta": 0.0336,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2571,
"delta": 0.0101,
"percent_delta": 0.0409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.661,
"after": 0.0,
"delta": -0.661,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 2.0,
"delta": 1.05,
"percent_delta": 1.1053,
"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.357,
"after": 0.3763,
"delta": 0.0193,
"percent_delta": 0.0541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.644,
"after": 1.0,
"delta": 0.356,
"percent_delta": 0.5528,
"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.444,
"after": 0.4431,
"delta": -0.0009,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.766,
"after": 1.0,
"delta": 0.234,
"percent_delta": 0.3055,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.95,
"after": 2.0,
"delta": 1.05,
"percent_delta": 1.1053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.661,
"after": 0.0,
"delta": -0.661,
"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.188 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 3.870 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.661 | - |
| predicted_H | 0.950 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.357 | - |
| predicted_R | 0.644 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.444 | - |
| predicted_SO | 0.766 | - |
Final model 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.309 | 0.121 |
| predicted_3B | 0.021 | 0.004 |
| predicted_AB | 6.320 | 2.450 |
| predicted_AVG | 0.256 | 0.009 |
| predicted_BB | 1.212 | 0.551 |
| predicted_H | 1.643 | 0.693 |
| predicted_HBP | 0.002 | - |
| predicted_HR | 0.281 | 0.121 |
| predicted_OBP | 0.371 | 0.014 |
| predicted_R | 1.172 | 0.528 |
| predicted_RBI | 0.871 | 0.361 |
| predicted_SLG | 0.451 | 0.007 |
| predicted_SO | 1.383 | 0.617 |
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.309 | 0.000 |
| predicted_3B | 0.021 | 0.000 |
| predicted_AB | 6.320 | 0.000 |
| predicted_AVG | 0.257 | 0.001 |
| predicted_BB | 1.208 | -0.005 |
| predicted_H | 1.625 | -0.018 |
| predicted_HBP | 0.002 | 0.000 |
| predicted_HR | 0.275 | -0.006 |
| predicted_OBP | 0.376 | 0.005 |
| predicted_R | 1.153 | -0.019 |
| predicted_RBI | 0.857 | -0.014 |
| predicted_SLG | 0.443 | -0.008 |
| predicted_SO | 1.388 | 0.005 |
AB rounded to 6 (raw=6.32), rates preserved: AVG=0.257 HR/AB=0.043
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=47.0, weight=0.244, BvP AVG=0.319)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.309 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 6.000 | -0.320 |
| predicted_AVG | 0.333 | 0.076 |
| predicted_BB | 1.000 | -0.208 |
| predicted_H | 2.000 | 0.375 |
| predicted_HR | 0.000 | -0.275 |
| predicted_OBP | 0.429 | 0.053 |
| predicted_R | 1.000 | -0.153 |
| predicted_RBI | 1.000 | 0.143 |
| predicted_SLG | 0.333 | -0.110 |
| 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 | -2.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.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 | 5.000 | 1.000 | 0.000 | 0.000 | 1.000 | 4.000 | 4.000 | 4.000 | 0.2941 | 0.4286 | 0.3529 | 0.2941 | 0.0000 | 0.0588 | 0.2353 | 0.2353 |
| last_10 | 0.20 | 10 | - | 32.000 | 7.000 | 1.000 | 0.000 | 1.000 | 4.000 | 7.000 | 8.000 | 9.000 | 0.2188 | 0.3750 | 0.3438 | 0.2188 | 0.0312 | 0.1250 | 0.2500 | 0.2812 |
| season | 0.60 | 63 | - | 867.000 | 239.000 | 45.000 | 4.000 | 58.000 | 151.000 | 154.000 | 158.000 | 183.000 | 0.2757 | 0.3836 | 0.5375 | 0.2757 | 0.0669 | 0.1742 | 0.1822 | 0.2111 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4630 |
| predicted_3B | 0.0260 |
| predicted_AB | 9.4160 |
| predicted_AVG | 0.2675 |
| predicted_BB | 1.9090 |
| predicted_H | 2.5190 |
| predicted_HBP | 0.0020 |
| predicted_HR | 0.4330 |
| predicted_OBP | 0.3887 |
| predicted_R | 1.8400 |
| predicted_RBI | 1.3270 |
| predicted_SLG | 0.4603 |
| predicted_SO | 2.1630 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1880 | 0.4630 | 0.3095 | model_form_blend |
| predicted_3B | 0.0170 | 0.0260 | 0.0210 | model_form_blend |
| predicted_AB | 3.8700 | 9.4160 | 6.3200 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2675 | 0.2561 | model_form_blend |
| predicted_BB | 0.6610 | 1.9090 | 1.2123 | model_form_blend |
| predicted_H | 0.9500 | 2.5190 | 1.6431 | model_form_blend |
| predicted_HBP | - | 0.0020 | 0.0020 | form_only |
| predicted_HR | 0.1600 | 0.4330 | 0.2806 | model_form_blend |
| predicted_OBP | 0.3570 | 0.3887 | 0.3710 | model_form_blend |
| predicted_R | 0.6440 | 1.8400 | 1.1723 | model_form_blend |
| predicted_RBI | 0.5100 | 1.3270 | 0.8709 | model_form_blend |
| predicted_SLG | 0.4440 | 0.4603 | 0.4512 | model_form_blend |
| predicted_SO | 0.7660 | 2.1630 | 1.3831 | 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 | 239 |
| 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.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 | 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 | 1 |
| 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 |
| gameID | 20260607_CHW@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-07 |
| sl_k_percent | 18.6 |
| sl_bb_percent | 14.5 |
| sl_woba | 0.378 |
| sl_xwoba | 0.413 |
| sl_xba | 0.29 |
| sl_xslg | 0.569 |
| sl_sweet_spot_percent | 37.2 |
| sl_barrel_batted_rate | 13.9 |
| sl_hard_hit_percent | 43.9 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 12.5 |
| sl_whiff_percent | 29.1 |
| sl_swing_percent | 51.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.124 | 0.000 | 0.000 | Hitting_2B | 0.122 | 0.000 | -0.122 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.474 | 3.000 | 6.000 | Hitting_AB | 3.424 | 2.000 | -0.424 | 1.000 |
| predicted_AVG | 0.223 | 0.000 | 0.167 | Hitting_AVG | 0.246 | 0.000 | -0.246 | 0.000 |
| predicted_BB | 0.299 | 1.000 | 1.000 | Hitting_BB | 0.295 | 2.000 | 0.705 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.750 | 0.000 | 1.000 | Hitting_H | 0.842 | 0.000 | -0.842 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_OBP | 0.301 | 0.250 | 0.286 | Hitting_OBP | 0.327 | 0.500 | -0.077 | -0.250 |
| predicted_R | 0.350 | 0.000 | 1.000 | Hitting_R | 0.345 | 1.000 | -0.345 | -1.000 |
| predicted_RBI | 0.320 | 0.000 | 1.000 | Hitting_RBI | 0.302 | 0.000 | -0.302 | 0.000 |
| predicted_SLG | 0.350 | 0.000 | 0.167 | Hitting_SLG | 0.345 | 0.000 | -0.345 | 0.000 |
| predicted_SO | 0.635 | 1.000 | 1.000 | Hitting_SO | 0.626 | 1.000 | 0.374 | 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 | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_BB: 0.2990 -> 1.0000 (boost 0.7010, better) |
| Biggest Deboost | predicted_H: 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 | 8 | 7 | 1 | 6 | 2 | predicted_AB: 3.4740 -> 5.6394 (boost 2.1654, better) | predicted_AVG: 0.2230 -> 0.2145 (deboost -0.0085, 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.3051 -> 0.2864 (deboost -0.0187, 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.4794 -> 1.0000 (boost 0.5206, better) | predicted_SO: 1.2303 -> 1.0000 (deboost -0.2303, better) | AB rounded to 6 (raw=5.64), rates preserved: AVG=0.206 HR/AB=0.035 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=39.0, weight=0.226, BvP AVG=0.359) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6529 -> 1.0000 (boost 0.3471, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3400 -> 0.1670 (deboost -0.1730, 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_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.1670 -> 0.3400 (boost 0.1730, better) | - | 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.124,
"predicted_3B": 0.0,
"predicted_AB": 3.474,
"predicted_AVG": 0.223,
"predicted_BB": 0.299,
"predicted_H": 0.75,
"predicted_HR": 0.12,
"predicted_OBP": 0.301,
"predicted_R": 0.35,
"predicted_RBI": 0.32,
"predicted_SLG": 0.35,
"predicted_SO": 0.635
},
"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.0009,
"predicted_AB": 5.6394,
"predicted_AVG": 0.2145,
"predicted_BB": 0.6419,
"predicted_H": 1.172,
"predicted_HBP": 0.225,
"predicted_HR": 0.203,
"predicted_OBP": 0.3051,
"predicted_R": 0.6637,
"predicted_RBI": 0.4873,
"predicted_SLG": 0.3451,
"predicted_SO": 1.2256
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.124,
"after": 0.1605,
"delta": 0.0365,
"percent_delta": 0.2944,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.474,
"after": 5.6394,
"delta": 2.1654,
"percent_delta": 0.6233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2145,
"delta": -0.0085,
"percent_delta": -0.0381,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.299,
"after": 0.6419,
"delta": 0.3429,
"percent_delta": 1.1468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 1.172,
"delta": 0.422,
"percent_delta": 0.5627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.203,
"delta": 0.083,
"percent_delta": 0.6917,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.3051,
"delta": 0.0041,
"percent_delta": 0.0136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.35,
"after": 0.6637,
"delta": 0.3137,
"percent_delta": 0.8963,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.4873,
"delta": 0.1673,
"percent_delta": 0.5228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.35,
"after": 0.3451,
"delta": -0.0049,
"percent_delta": -0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.635,
"after": 1.2256,
"delta": 0.5906,
"percent_delta": 0.9301,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.474,
"after": 5.6394,
"delta": 2.1654,
"percent_delta": 0.6233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2145,
"delta": -0.0085,
"percent_delta": -0.0381,
"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": 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.1605,
"predicted_3B": 0.0009,
"predicted_AB": 5.6394,
"predicted_AVG": 0.2055,
"predicted_BB": 0.6395,
"predicted_H": 1.159,
"predicted_HBP": 0.225,
"predicted_HR": 0.1988,
"predicted_OBP": 0.2864,
"predicted_R": 0.6529,
"predicted_RBI": 0.4794,
"predicted_SLG": 0.34,
"predicted_SO": 1.2303
},
"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.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6394,
"after": 5.6394,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2145,
"after": 0.2055,
"delta": -0.009,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6419,
"after": 0.6395,
"delta": -0.0024,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.172,
"after": 1.159,
"delta": -0.013,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.225,
"after": 0.225,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.203,
"after": 0.1988,
"delta": -0.0042,
"percent_delta": -0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3051,
"after": 0.2864,
"delta": -0.0187,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6637,
"after": 0.6529,
"delta": -0.0108,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4873,
"after": 0.4794,
"delta": -0.0079,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3451,
"after": 0.34,
"delta": -0.0051,
"percent_delta": -0.0148,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2256,
"after": 1.2303,
"delta": 0.0047,
"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_OBP",
"before": 0.3051,
"after": 0.2864,
"delta": -0.0187,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.64), rates preserved: AVG=0.206 HR/AB=0.035",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.1605,
"after": 0.0,
"delta": -0.1605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6394,
"after": 6.0,
"delta": 0.3606,
"percent_delta": 0.0639,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6395,
"after": 1.0,
"delta": 0.3605,
"percent_delta": 0.5637,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.159,
"after": 1.0,
"delta": -0.159,
"percent_delta": -0.1372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.225,
"after": 0.0,
"delta": -0.225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1988,
"after": 0.0,
"delta": -0.1988,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4794,
"after": 1.0,
"delta": 0.5206,
"percent_delta": 1.0859,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2303,
"after": 1.0,
"delta": -0.2303,
"percent_delta": -0.1872,
"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.4794,
"after": 1.0,
"delta": 0.5206,
"percent_delta": 1.0859,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.2303,
"after": 1.0,
"delta": -0.2303,
"percent_delta": -0.1872,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=39.0, weight=0.226, BvP AVG=0.359)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 6.0,
"after": 6.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.7739,
"bvp": 0.2261
},
"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": 6.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": 6.0,
"after": 6.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.6529,
"after": 1.0,
"delta": 0.3471,
"percent_delta": 0.5316,
"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.6529,
"after": 1.0,
"delta": 0.3471,
"percent_delta": 0.5316,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2055,
"after": 0.167,
"delta": -0.0385,
"percent_delta": -0.1873,
"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.2864,
"after": 0.286,
"delta": -0.0004,
"percent_delta": -0.0014,
"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.34,
"after": 0.167,
"delta": -0.173,
"percent_delta": -0.5088,
"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.34,
"after": 0.167,
"delta": -0.173,
"percent_delta": -0.5088,
"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": 6.0,
"after": 3.0,
"delta": -3.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": 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_AB",
"before": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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.2055,
"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.2864,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.34,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.167,
"after": 0.2055,
"delta": 0.0385,
"percent_delta": 0.2306,
"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.286,
"after": 0.2864,
"delta": 0.0004,
"percent_delta": 0.0015,
"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.167,
"after": 0.34,
"delta": 0.173,
"percent_delta": 1.0362,
"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.167,
"after": 0.34,
"delta": 0.173,
"percent_delta": 1.0362,
"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.124,
"after": 0.0,
"delta": -0.124,
"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.474,
"after": 3.0,
"delta": -0.474,
"percent_delta": -0.1364,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2055,
"delta": -0.0175,
"percent_delta": -0.0785,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.299,
"after": 1.0,
"delta": 0.701,
"percent_delta": 2.3445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 0.0,
"delta": -0.75,
"percent_delta": -1.0,
"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.301,
"after": 0.2864,
"delta": -0.0146,
"percent_delta": -0.0485,
"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.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.35,
"after": 0.34,
"delta": -0.01,
"percent_delta": -0.0286,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.635,
"after": 1.0,
"delta": 0.365,
"percent_delta": 0.5748,
"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_BB",
"before": 0.299,
"after": 1.0,
"delta": 0.701,
"percent_delta": 2.3445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"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.124 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.474 | - |
| predicted_AVG | 0.223 | - |
| predicted_BB | 0.299 | - |
| predicted_H | 0.750 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.301 | - |
| predicted_R | 0.350 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.350 | - |
| predicted_SO | 0.635 | - |
Final model 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.037 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.639 | 2.165 |
| predicted_AVG | 0.214 | -0.009 |
| predicted_BB | 0.642 | 0.343 |
| predicted_H | 1.172 | 0.422 |
| predicted_HBP | 0.225 | - |
| predicted_HR | 0.203 | 0.083 |
| predicted_OBP | 0.305 | 0.004 |
| predicted_R | 0.664 | 0.314 |
| predicted_RBI | 0.487 | 0.167 |
| predicted_SLG | 0.345 | -0.005 |
| predicted_SO | 1.226 | 0.591 |
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.001 | 0.000 |
| predicted_AB | 5.639 | 0.000 |
| predicted_AVG | 0.205 | -0.009 |
| predicted_BB | 0.639 | -0.002 |
| predicted_H | 1.159 | -0.013 |
| predicted_HBP | 0.225 | 0.000 |
| predicted_HR | 0.199 | -0.004 |
| predicted_OBP | 0.286 | -0.019 |
| predicted_R | 0.653 | -0.011 |
| predicted_RBI | 0.479 | -0.008 |
| predicted_SLG | 0.340 | -0.005 |
| predicted_SO | 1.230 | 0.005 |
AB rounded to 6 (raw=5.64), rates preserved: AVG=0.206 HR/AB=0.035
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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=39.0, weight=0.226, BvP AVG=0.359)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.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 | 6.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.161 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 6.000 | 0.361 |
| predicted_AVG | 0.167 | -0.038 |
| predicted_BB | 1.000 | 0.361 |
| predicted_H | 1.000 | -0.159 |
| predicted_HR | 0.000 | -0.199 |
| predicted_OBP | 0.286 | -0.000 |
| predicted_R | 1.000 | 0.347 |
| predicted_RBI | 1.000 | 0.521 |
| predicted_SLG | 0.167 | -0.173 |
| 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 | 3.000 | -3.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 | -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 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 3.000 | 4.000 | 6.000 | 0.0667 | 0.2632 | 0.2667 | 0.0667 | 0.0667 | 0.0667 | 0.2667 | 0.4000 |
| last_10 | 0.20 | 8 | - | 30.000 | 6.000 | 0.000 | 0.000 | 2.000 | 2.000 | 4.000 | 4.000 | 7.000 | 0.2000 | 0.3143 | 0.4000 | 0.2000 | 0.0667 | 0.0667 | 0.1333 | 0.2333 |
| season | 0.60 | 41 | - | 476.000 | 117.000 | 17.000 | 0.000 | 10.000 | 42.000 | 48.000 | 41.000 | 87.000 | 0.2458 | 0.3253 | 0.3445 | 0.2458 | 0.0210 | 0.0882 | 0.0861 | 0.1828 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2080 |
| predicted_3B | 0.0020 |
| predicted_AB | 8.4570 |
| predicted_AVG | 0.2035 |
| predicted_BB | 1.0880 |
| predicted_H | 1.7210 |
| predicted_HBP | 0.2250 |
| predicted_HR | 0.3110 |
| predicted_OBP | 0.3105 |
| predicted_R | 1.0720 |
| predicted_RBI | 0.7050 |
| predicted_SLG | 0.3387 |
| predicted_SO | 1.9940 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1240 | 0.2080 | 0.1605 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.4740 | 8.4570 | 5.6394 | model_form_blend |
| predicted_AVG | 0.2230 | 0.2035 | 0.2145 | model_form_blend |
| predicted_BB | 0.2990 | 1.0880 | 0.6419 | model_form_blend |
| predicted_H | 0.7500 | 1.7210 | 1.1720 | model_form_blend |
| predicted_HBP | - | 0.2250 | 0.2250 | form_only |
| predicted_HR | 0.1200 | 0.3110 | 0.2030 | model_form_blend |
| predicted_OBP | 0.3010 | 0.3105 | 0.3051 | model_form_blend |
| predicted_R | 0.3500 | 1.0720 | 0.6637 | model_form_blend |
| predicted_RBI | 0.3200 | 0.7050 | 0.4873 | model_form_blend |
| predicted_SLG | 0.3500 | 0.3387 | 0.3451 | model_form_blend |
| predicted_SO | 0.6350 | 1.9940 | 1.2256 | 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 | 139 |
| Season rows before report date | 139 |
| Report year | 2026 |
| Profile rows used | 137 |
| 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.246 |
| 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 | 0.0 |
| Hitting_BB | 2 |
| 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 | 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 | C |
| gameID | 20260606_CHW@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-06 |
| sl_k_percent | 17.8 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.279 |
| sl_xwoba | 0.327 |
| sl_xba | 0.256 |
| sl_xslg | 0.39 |
| sl_sweet_spot_percent | 31.5 |
| sl_barrel_batted_rate | 4.5 |
| sl_hard_hit_percent | 42.3 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 22.9 |
| sl_swing_percent | 46.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.165 | 0.000 | 0.000 | Hitting_2B | 0.165 | 0.000 | -0.165 | 0.000 |
| predicted_3B | 0.026 | 0.000 | 0.000 | Hitting_3B | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_AB | 3.582 | 4.000 | 6.000 | Hitting_AB | 3.582 | 3.000 | 0.418 | 1.000 |
| predicted_AVG | 0.233 | 0.500 | 0.167 | Hitting_AVG | 0.219 | 0.333 | 0.281 | 0.167 |
| predicted_BB | 0.247 | 0.000 | 1.000 | Hitting_BB | 0.247 | 1.000 | -0.247 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.800 | 2.000 | 1.000 | Hitting_H | 0.784 | 1.000 | 1.216 | 1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.108 | 0.000 | -0.108 | 0.000 |
| predicted_OBP | 0.289 | 0.500 | 0.286 | Hitting_OBP | 0.271 | 0.500 | 0.229 | 0.000 |
| predicted_R | 0.314 | 1.000 | 0.000 | Hitting_R | 0.314 | 0.000 | 0.686 | 1.000 |
| predicted_RBI | 0.440 | 2.000 | 1.000 | Hitting_RBI | 0.521 | 1.000 | 1.479 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.211 | 1.000 | -0.211 | -1.000 |
| predicted_SLG | 0.364 | 0.500 | 0.167 | Hitting_SLG | 0.370 | 0.333 | 0.130 | 0.167 |
| predicted_SO | 0.582 | 1.000 | 1.000 | Hitting_SO | 0.582 | 2.000 | 0.418 | -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_RBI: 0.4400 -> 2.0000 (boost 1.5600, better) |
| Biggest Deboost | predicted_BB: 0.2470 -> 0.0000 (deboost -0.2470, 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 | 9 | 7 | 2 | 6 | 3 | predicted_AB: 3.5820 -> 5.6407 (boost 2.0587, better) | predicted_SLG: 0.3640 -> 0.3559 (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 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.2847 -> 0.2741 (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 | 6 | 2 | 4 | 2 | 4 | predicted_AB: 5.6407 -> 6.0000 (boost 0.3593, better) | predicted_BB: 0.4489 -> 0.0000 (deboost -0.4489, worse) | AB rounded to 6 (raw=5.64), rates preserved: AVG=0.216 HR/AB=0.025 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.400) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4591 -> 0.0000 (deboost -0.4591, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2741 -> 0.2860 (boost 0.0119, better) | predicted_SLG: 0.3495 -> 0.1670 (deboost -0.1825, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 3 | 2 | 3 | 2 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.3495 (boost 0.1825, better) | predicted_OBP: 0.2860 -> 0.2741 (deboost -0.0119, 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.165,
"predicted_3B": 0.026,
"predicted_AB": 3.582,
"predicted_AVG": 0.233,
"predicted_BB": 0.247,
"predicted_H": 0.8,
"predicted_HR": 0.1,
"predicted_OBP": 0.289,
"predicted_R": 0.314,
"predicted_RBI": 0.44,
"predicted_SLG": 0.364,
"predicted_SO": 0.582
},
"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.2637,
"predicted_3B": 0.0304,
"predicted_AB": 5.6407,
"predicted_AVG": 0.2256,
"predicted_BB": 0.4506,
"predicted_H": 1.2339,
"predicted_HBP": 0.03,
"predicted_HR": 0.1452,
"predicted_OBP": 0.2847,
"predicted_R": 0.4667,
"predicted_RBI": 0.7261,
"predicted_SLG": 0.3559,
"predicted_SO": 0.9646
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.165,
"after": 0.2637,
"delta": 0.0987,
"percent_delta": 0.5982,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.026,
"after": 0.0304,
"delta": 0.0044,
"percent_delta": 0.1692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.582,
"after": 5.6407,
"delta": 2.0587,
"percent_delta": 0.5747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2256,
"delta": -0.0074,
"percent_delta": -0.0318,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.247,
"after": 0.4506,
"delta": 0.2036,
"percent_delta": 0.8243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 1.2339,
"delta": 0.4339,
"percent_delta": 0.5424,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1452,
"delta": 0.0452,
"percent_delta": 0.452,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.289,
"after": 0.2847,
"delta": -0.0043,
"percent_delta": -0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.314,
"after": 0.4667,
"delta": 0.1527,
"percent_delta": 0.4863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.7261,
"delta": 0.2861,
"percent_delta": 0.6502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3559,
"delta": -0.0081,
"percent_delta": -0.0223,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.582,
"after": 0.9646,
"delta": 0.3826,
"percent_delta": 0.6574,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 7,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.582,
"after": 5.6407,
"delta": 2.0587,
"percent_delta": 0.5747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3559,
"delta": -0.0081,
"percent_delta": -0.0223,
"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": 58
}
},
{
"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.2637,
"predicted_3B": 0.0304,
"predicted_AB": 5.6407,
"predicted_AVG": 0.2163,
"predicted_BB": 0.4489,
"predicted_H": 1.2202,
"predicted_HBP": 0.03,
"predicted_HR": 0.1422,
"predicted_OBP": 0.2741,
"predicted_R": 0.4591,
"predicted_RBI": 0.7143,
"predicted_SLG": 0.3495,
"predicted_SO": 0.9683
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2637,
"after": 0.2637,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0304,
"after": 0.0304,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6407,
"after": 5.6407,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2256,
"after": 0.2163,
"delta": -0.0093,
"percent_delta": -0.0412,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4506,
"after": 0.4489,
"delta": -0.0017,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2339,
"after": 1.2202,
"delta": -0.0137,
"percent_delta": -0.0111,
"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.1452,
"after": 0.1422,
"delta": -0.003,
"percent_delta": -0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2847,
"after": 0.2741,
"delta": -0.0106,
"percent_delta": -0.0372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4667,
"after": 0.4591,
"delta": -0.0076,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7261,
"after": 0.7143,
"delta": -0.0118,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3559,
"after": 0.3495,
"delta": -0.0064,
"percent_delta": -0.018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9646,
"after": 0.9683,
"delta": 0.0037,
"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_OBP",
"before": 0.2847,
"after": 0.2741,
"delta": -0.0106,
"percent_delta": -0.0372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.64), rates preserved: AVG=0.216 HR/AB=0.025",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.2637,
"after": 0.0,
"delta": -0.2637,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0304,
"after": 0.0,
"delta": -0.0304,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6407,
"after": 6.0,
"delta": 0.3593,
"percent_delta": 0.0637,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4489,
"after": 0.0,
"delta": -0.4489,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2202,
"after": 1.0,
"delta": -0.2202,
"percent_delta": -0.1805,
"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.1422,
"after": 0.0,
"delta": -0.1422,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7143,
"after": 1.0,
"delta": 0.2857,
"percent_delta": 0.4,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9683,
"after": 1.0,
"delta": 0.0317,
"percent_delta": 0.0327,
"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": 5.6407,
"after": 6.0,
"delta": 0.3593,
"percent_delta": 0.0637,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4489,
"after": 0.0,
"delta": -0.4489,
"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.400)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 6.0,
"after": 6.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_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": 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": {
"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": 6.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": 6.0,
"after": 6.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.4591,
"after": 0.0,
"delta": -0.4591,
"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.4591,
"after": 0.0,
"delta": -0.4591,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2163,
"after": 0.167,
"delta": -0.0493,
"percent_delta": -0.2279,
"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.2741,
"after": 0.286,
"delta": 0.0119,
"percent_delta": 0.0434,
"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.3495,
"after": 0.167,
"delta": -0.1825,
"percent_delta": -0.5222,
"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.2741,
"after": 0.286,
"delta": 0.0119,
"percent_delta": 0.0434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3495,
"after": 0.167,
"delta": -0.1825,
"percent_delta": -0.5222,
"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": 0.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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 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": 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": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 2,
"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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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.2163,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2741,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3495,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.167,
"after": 0.2163,
"delta": 0.0493,
"percent_delta": 0.2953,
"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.286,
"after": 0.2741,
"delta": -0.0119,
"percent_delta": -0.0416,
"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.167,
"after": 0.3495,
"delta": 0.1825,
"percent_delta": 1.0926,
"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.167,
"after": 0.3495,
"delta": 0.1825,
"percent_delta": 1.0926,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2741,
"delta": -0.0119,
"percent_delta": -0.0416,
"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.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.582,
"after": 4.0,
"delta": 0.418,
"percent_delta": 0.1167,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2163,
"delta": -0.0167,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.247,
"after": 0.0,
"delta": -0.247,
"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.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.289,
"after": 0.2741,
"delta": -0.0149,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.314,
"after": 1.0,
"delta": 0.686,
"percent_delta": 2.1847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 2.0,
"delta": 1.56,
"percent_delta": 3.5455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3495,
"delta": -0.0145,
"percent_delta": -0.0398,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.582,
"after": 1.0,
"delta": 0.418,
"percent_delta": 0.7182,
"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.44,
"after": 2.0,
"delta": 1.56,
"percent_delta": 3.5455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.247,
"after": 0.0,
"delta": -0.247,
"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.026 | - |
| predicted_AB | 3.582 | - |
| predicted_AVG | 0.233 | - |
| predicted_BB | 0.247 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.289 | - |
| predicted_R | 0.314 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.364 | - |
| predicted_SO | 0.582 | - |
Final model 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.264 | 0.099 |
| predicted_3B | 0.030 | 0.004 |
| predicted_AB | 5.641 | 2.059 |
| predicted_AVG | 0.226 | -0.007 |
| predicted_BB | 0.451 | 0.204 |
| predicted_H | 1.234 | 0.434 |
| predicted_HBP | 0.030 | - |
| predicted_HR | 0.145 | 0.045 |
| predicted_OBP | 0.285 | -0.004 |
| predicted_R | 0.467 | 0.153 |
| predicted_RBI | 0.726 | 0.286 |
| predicted_SLG | 0.356 | -0.008 |
| predicted_SO | 0.965 | 0.383 |
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.264 | 0.000 |
| predicted_3B | 0.030 | 0.000 |
| predicted_AB | 5.641 | 0.000 |
| predicted_AVG | 0.216 | -0.009 |
| predicted_BB | 0.449 | -0.002 |
| predicted_H | 1.220 | -0.014 |
| predicted_HBP | 0.030 | 0.000 |
| predicted_HR | 0.142 | -0.003 |
| predicted_OBP | 0.274 | -0.011 |
| predicted_R | 0.459 | -0.008 |
| predicted_RBI | 0.714 | -0.012 |
| predicted_SLG | 0.349 | -0.006 |
| predicted_SO | 0.968 | 0.004 |
AB rounded to 6 (raw=5.64), rates preserved: AVG=0.216 HR/AB=0.025
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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.400)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 1.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 | 6.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.264 |
| predicted_3B | 0.000 | -0.030 |
| predicted_AB | 6.000 | 0.359 |
| predicted_AVG | 0.167 | -0.049 |
| predicted_BB | 1.000 | 0.551 |
| predicted_H | 1.000 | -0.220 |
| predicted_HR | 0.000 | -0.142 |
| predicted_OBP | 0.286 | 0.012 |
| predicted_R | 0.000 | -0.459 |
| predicted_RBI | 1.000 | 0.286 |
| predicted_SLG | 0.167 | -0.182 |
| predicted_SO | 1.000 | 0.032 |
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 | -2.000 |
| BB | 0.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 | 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 | - | 15.000 | 4.000 | 1.000 | 0.000 | 0.000 | 2.000 | 1.000 | 2.000 | 3.000 | 0.2667 | 0.3529 | 0.3333 | 0.2667 | 0.0000 | 0.1333 | 0.1333 | 0.2000 |
| last_10 | 0.20 | 10 | - | 33.000 | 5.000 | 1.000 | 0.000 | 1.000 | 3.000 | 2.000 | 3.000 | 6.000 | 0.1515 | 0.2222 | 0.2727 | 0.1515 | 0.0303 | 0.0909 | 0.0909 | 0.1818 |
| season | 0.60 | 58 | - | 695.000 | 152.000 | 32.000 | 5.000 | 21.000 | 101.000 | 61.000 | 48.000 | 113.000 | 0.2187 | 0.2713 | 0.3698 | 0.2187 | 0.0302 | 0.1453 | 0.0691 | 0.1626 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3900 |
| predicted_3B | 0.0360 |
| predicted_AB | 8.2740 |
| predicted_AVG | 0.2162 |
| predicted_BB | 0.7110 |
| predicted_H | 1.7890 |
| predicted_HBP | 0.0300 |
| predicted_HR | 0.2030 |
| predicted_OBP | 0.2792 |
| predicted_R | 0.6620 |
| predicted_RBI | 1.0920 |
| predicted_SLG | 0.3456 |
| predicted_SO | 1.4540 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1650 | 0.3900 | 0.2637 | model_form_blend |
| predicted_3B | 0.0260 | 0.0360 | 0.0304 | model_form_blend |
| predicted_AB | 3.5820 | 8.2740 | 5.6407 | model_form_blend |
| predicted_AVG | 0.2330 | 0.2162 | 0.2256 | model_form_blend |
| predicted_BB | 0.2470 | 0.7110 | 0.4506 | model_form_blend |
| predicted_H | 0.8000 | 1.7890 | 1.2339 | model_form_blend |
| predicted_HBP | - | 0.0300 | 0.0300 | form_only |
| predicted_HR | 0.1000 | 0.2030 | 0.1452 | model_form_blend |
| predicted_OBP | 0.2890 | 0.2792 | 0.2847 | model_form_blend |
| predicted_R | 0.3140 | 0.6620 | 0.4667 | model_form_blend |
| predicted_RBI | 0.4400 | 1.0920 | 0.7261 | model_form_blend |
| predicted_SLG | 0.3640 | 0.3456 | 0.3559 | model_form_blend |
| predicted_SO | 0.5820 | 1.4540 | 0.9646 | 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 | 194 |
| Season rows before report date | 194 |
| Report year | 2026 |
| Profile rows used | 194 |
| 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 | 2 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.219 |
| 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 | 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 | 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 | 2B |
| gameID | 20260607_CHW@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-07 |
| sl_k_percent | 17.3 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.284 |
| sl_xwoba | 0.306 |
| sl_xba | 0.249 |
| sl_xslg | 0.399 |
| sl_sweet_spot_percent | 32.3 |
| sl_barrel_batted_rate | 7.8 |
| sl_hard_hit_percent | 40.7 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 16.2 |
| sl_whiff_percent | 17.5 |
| 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.106 | 0.000 | 0.000 | Hitting_2B | 0.105 | 0.000 | -0.105 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.181 | 4.000 | 5.000 | Hitting_AB | 3.147 | 2.000 | 0.853 | 2.000 |
| predicted_AVG | 0.221 | 0.000 | 0.200 | Hitting_AVG | 0.187 | 0.000 | -0.187 | 0.000 |
| predicted_BB | 0.085 | 0.000 | 0.000 | Hitting_BB | 0.095 | 0.000 | -0.095 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.220 | 0.000 | 1.000 | Hitting_H | 0.589 | 0.000 | -0.589 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.063 | 0.000 | -0.063 | 0.000 |
| predicted_OBP | 0.236 | 0.000 | 0.200 | Hitting_OBP | 0.225 | 0.000 | -0.225 | 0.000 |
| predicted_R | 0.319 | 0.000 | 1.000 | Hitting_R | 0.326 | 0.000 | -0.326 | 0.000 |
| predicted_RBI | 0.200 | 0.000 | 1.000 | Hitting_RBI | 0.463 | 0.000 | -0.463 | 0.000 |
| predicted_SLG | 0.370 | 0.000 | 0.200 | Hitting_SLG | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_SO | 0.766 | 2.000 | 1.000 | Hitting_SO | 0.758 | 2.000 | 1.242 | 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 | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.7660 -> 2.0000 (boost 1.2340, worse) |
| Biggest Deboost | predicted_R: 0.3190 -> 0.0000 (deboost -0.3190, 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 | 9 | 6 | 3 | 5 | 4 | predicted_AB: 3.1810 -> 4.6752 (boost 1.4942, better) | predicted_SLG: 0.3700 -> 0.3455 (deboost -0.0245, 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.3455 -> 0.2451 (deboost -0.1004, 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_H: 0.5957 -> 1.0000 (boost 0.4043, better) | predicted_HBP: 0.2870 -> 0.0000 (deboost -0.2870, worse) | AB rounded to 5 (raw=4.68), rates preserved: AVG=0.127 HR/AB=0.030 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.600) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5353 -> 1.0000 (boost 0.4647, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1274 -> 0.2000 (boost 0.0726, better) | predicted_SLG: 0.2451 -> 0.2000 (deboost -0.0451, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 1 | 4 | 0 | 5 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_AB: 5.0000 -> 4.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.2000 -> 0.2451 (boost 0.0451, better) | predicted_AVG: 0.2000 -> 0.1274 (deboost -0.0726, 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.106,
"predicted_3B": 0.0,
"predicted_AB": 3.181,
"predicted_AVG": 0.221,
"predicted_BB": 0.085,
"predicted_H": 0.22,
"predicted_HR": 0.05,
"predicted_OBP": 0.236,
"predicted_R": 0.319,
"predicted_RBI": 0.2,
"predicted_SLG": 0.37,
"predicted_SO": 0.766
},
"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.1349,
"predicted_3B": 0.0008,
"predicted_AB": 4.6752,
"predicted_AVG": 0.1981,
"predicted_BB": 0.1173,
"predicted_H": 0.6024,
"predicted_HBP": 0.287,
"predicted_HR": 0.1409,
"predicted_OBP": 0.2268,
"predicted_R": 0.5442,
"predicted_RBI": 0.6206,
"predicted_SLG": 0.3455,
"predicted_SO": 1.2231
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.106,
"after": 0.1349,
"delta": 0.0289,
"percent_delta": 0.2726,
"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.181,
"after": 4.6752,
"delta": 1.4942,
"percent_delta": 0.4697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.221,
"after": 0.1981,
"delta": -0.0229,
"percent_delta": -0.1036,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.085,
"after": 0.1173,
"delta": 0.0323,
"percent_delta": 0.38,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.22,
"after": 0.6024,
"delta": 0.3824,
"percent_delta": 1.7382,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.1409,
"delta": 0.0909,
"percent_delta": 1.818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.236,
"after": 0.2268,
"delta": -0.0092,
"percent_delta": -0.039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.319,
"after": 0.5442,
"delta": 0.2252,
"percent_delta": 0.706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2,
"after": 0.6206,
"delta": 0.4206,
"percent_delta": 2.103,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3455,
"delta": -0.0245,
"percent_delta": -0.0662,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.766,
"after": 1.2231,
"delta": 0.4571,
"percent_delta": 0.5967,
"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_AB",
"before": 3.181,
"after": 4.6752,
"delta": 1.4942,
"percent_delta": 0.4697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3455,
"delta": -0.0245,
"percent_delta": -0.0662,
"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": 6,
"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.1349,
"predicted_3B": 0.0008,
"predicted_AB": 4.6752,
"predicted_AVG": 0.1274,
"predicted_BB": 0.1169,
"predicted_H": 0.5957,
"predicted_HBP": 0.287,
"predicted_HR": 0.138,
"predicted_OBP": 0.1487,
"predicted_R": 0.5353,
"predicted_RBI": 0.6105,
"predicted_SLG": 0.2451,
"predicted_SO": 1.2277
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1349,
"after": 0.1349,
"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.6752,
"after": 4.6752,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1981,
"after": 0.1274,
"delta": -0.0707,
"percent_delta": -0.3569,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1173,
"after": 0.1169,
"delta": -0.0004,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6024,
"after": 0.5957,
"delta": -0.0067,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.287,
"after": 0.287,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1409,
"after": 0.138,
"delta": -0.0029,
"percent_delta": -0.0206,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2268,
"after": 0.1487,
"delta": -0.0781,
"percent_delta": -0.3444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5442,
"after": 0.5353,
"delta": -0.0089,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6206,
"after": 0.6105,
"delta": -0.0101,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3455,
"after": 0.2451,
"delta": -0.1004,
"percent_delta": -0.2906,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2231,
"after": 1.2277,
"delta": 0.0046,
"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.3455,
"after": 0.2451,
"delta": -0.1004,
"percent_delta": -0.2906,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.68), rates preserved: AVG=0.127 HR/AB=0.030",
"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.1349,
"after": 0.0,
"delta": -0.1349,
"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.6752,
"after": 5.0,
"delta": 0.3248,
"percent_delta": 0.0695,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1169,
"after": 0.0,
"delta": -0.1169,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5957,
"after": 1.0,
"delta": 0.4043,
"percent_delta": 0.6787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.287,
"after": 0.0,
"delta": -0.287,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.138,
"after": 0.0,
"delta": -0.138,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6105,
"after": 1.0,
"delta": 0.3895,
"percent_delta": 0.638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2277,
"after": 1.0,
"delta": -0.2277,
"percent_delta": -0.1855,
"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_H",
"before": 0.5957,
"after": 1.0,
"delta": 0.4043,
"percent_delta": 0.6787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.287,
"after": 0.0,
"delta": -0.287,
"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.600)",
"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.5353,
"after": 1.0,
"delta": 0.4647,
"percent_delta": 0.8681,
"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.5353,
"after": 1.0,
"delta": 0.4647,
"percent_delta": 0.8681,
"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.1274,
"after": 0.2,
"delta": 0.0726,
"percent_delta": 0.5699,
"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.1487,
"after": 0.2,
"delta": 0.0513,
"percent_delta": 0.345,
"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.2451,
"after": 0.2,
"delta": -0.0451,
"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.1274,
"after": 0.2,
"delta": 0.0726,
"percent_delta": 0.5699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2451,
"after": 0.2,
"delta": -0.0451,
"percent_delta": -0.184,
"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": 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": 2.0,
"delta": 1.0,
"percent_delta": 1.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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"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": 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.1274,
"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.1487,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2451,
"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.2,
"after": 0.1274,
"delta": -0.0726,
"percent_delta": -0.3629,
"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.2,
"after": 0.1487,
"delta": -0.0513,
"percent_delta": -0.2565,
"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.2,
"after": 0.2451,
"delta": 0.0451,
"percent_delta": 0.2257,
"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.2,
"after": 0.2451,
"delta": 0.0451,
"percent_delta": 0.2257,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.1274,
"delta": -0.0726,
"percent_delta": -0.3629,
"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.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": 3.181,
"after": 4.0,
"delta": 0.819,
"percent_delta": 0.2575,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.221,
"after": 0.1274,
"delta": -0.0936,
"percent_delta": -0.4235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.085,
"after": 0.0,
"delta": -0.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.22,
"after": 0.0,
"delta": -0.22,
"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.236,
"after": 0.1487,
"delta": -0.0873,
"percent_delta": -0.3699,
"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.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.2451,
"delta": -0.1249,
"percent_delta": -0.3376,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.766,
"after": 2.0,
"delta": 1.234,
"percent_delta": 1.611,
"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.766,
"after": 2.0,
"delta": 1.234,
"percent_delta": 1.611,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.319,
"after": 0.0,
"delta": -0.319,
"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.106 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.181 | - |
| predicted_AVG | 0.221 | - |
| predicted_BB | 0.085 | - |
| predicted_H | 0.220 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.236 | - |
| predicted_R | 0.319 | - |
| predicted_RBI | 0.200 | - |
| predicted_SLG | 0.370 | - |
| predicted_SO | 0.766 | - |
Final model 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.135 | 0.029 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.675 | 1.494 |
| predicted_AVG | 0.198 | -0.023 |
| predicted_BB | 0.117 | 0.032 |
| predicted_H | 0.602 | 0.382 |
| predicted_HBP | 0.287 | - |
| predicted_HR | 0.141 | 0.091 |
| predicted_OBP | 0.227 | -0.009 |
| predicted_R | 0.544 | 0.225 |
| predicted_RBI | 0.621 | 0.421 |
| predicted_SLG | 0.345 | -0.025 |
| predicted_SO | 1.223 | 0.457 |
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.135 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.675 | 0.000 |
| predicted_AVG | 0.127 | -0.071 |
| predicted_BB | 0.117 | -0.000 |
| predicted_H | 0.596 | -0.007 |
| predicted_HBP | 0.287 | 0.000 |
| predicted_HR | 0.138 | -0.003 |
| predicted_OBP | 0.149 | -0.078 |
| predicted_R | 0.535 | -0.009 |
| predicted_RBI | 0.611 | -0.010 |
| predicted_SLG | 0.245 | -0.100 |
| predicted_SO | 1.228 | 0.005 |
AB rounded to 5 (raw=4.68), rates preserved: AVG=0.127 HR/AB=0.030
| 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.600)
| 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.135 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.325 |
| predicted_AVG | 0.200 | 0.073 |
| predicted_BB | 0.000 | -0.117 |
| predicted_H | 1.000 | 0.404 |
| predicted_HR | 0.000 | -0.138 |
| predicted_OBP | 0.200 | 0.051 |
| predicted_R | 1.000 | 0.465 |
| predicted_RBI | 1.000 | 0.389 |
| predicted_SLG | 0.200 | -0.045 |
| 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 | 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 | 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 | - | 10.000 | 1.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 4.000 | 0.1000 | 0.1667 | 0.4000 | 0.1000 | 0.1000 | 0.3000 | 0.0000 | 0.4000 |
| last_10 | 0.20 | 6 | - | 26.000 | 1.000 | 0.000 | 0.000 | 1.000 | 3.000 | 4.000 | 0.000 | 7.000 | 0.0385 | 0.1333 | 0.1538 | 0.0385 | 0.0385 | 0.1154 | 0.0000 | 0.2692 |
| season | 0.60 | 34 | - | 299.000 | 56.000 | 10.000 | 0.000 | 6.000 | 44.000 | 30.000 | 8.000 | 72.000 | 0.1873 | 0.2226 | 0.2809 | 0.1873 | 0.0201 | 0.1472 | 0.0268 | 0.2408 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1740 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.6980 |
| predicted_AVG | 0.1672 |
| predicted_BB | 0.1610 |
| predicted_H | 1.1200 |
| predicted_HBP | 0.2870 |
| predicted_HR | 0.2640 |
| predicted_OBP | 0.2144 |
| predicted_R | 0.8490 |
| predicted_RBI | 1.1900 |
| predicted_SLG | 0.3123 |
| predicted_SO | 1.8420 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1060 | 0.1740 | 0.1349 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.1810 | 6.6980 | 4.6752 | model_form_blend |
| predicted_AVG | 0.2210 | 0.1672 | 0.1981 | model_form_blend |
| predicted_BB | 0.0850 | 0.1610 | 0.1173 | model_form_blend |
| predicted_H | 0.2200 | 1.1200 | 0.6024 | model_form_blend |
| predicted_HBP | - | 0.2870 | 0.2870 | form_only |
| predicted_HR | 0.0500 | 0.2640 | 0.1409 | model_form_blend |
| predicted_OBP | 0.2360 | 0.2144 | 0.2268 | model_form_blend |
| predicted_R | 0.3190 | 0.8490 | 0.5442 | model_form_blend |
| predicted_RBI | 0.2000 | 1.1900 | 0.6206 | model_form_blend |
| predicted_SLG | 0.3700 | 0.3123 | 0.3455 | model_form_blend |
| predicted_SO | 0.7660 | 1.8420 | 1.2231 | 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 | 94 |
| 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.187 |
| 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 | 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-LF |
| gameID | 20260606_CHW@PHI |
| game_type | ph |
| mlbID | 624641 |
| note | Struck out for Crawford in the 6th. |
| playerID | 624641 |
| playerName | Edmundo Sosa |
| pos | 2B |
| started | False |
| startingPosition | PH |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-06 |
| sl_k_percent | 23.3 |
| sl_bb_percent | 2.9 |
| sl_woba | 0.248 |
| sl_xwoba | 0.334 |
| sl_xba | 0.285 |
| sl_xslg | 0.457 |
| sl_sweet_spot_percent | 32.9 |
| sl_barrel_batted_rate | 8.2 |
| sl_hard_hit_percent | 39.7 |
| sl_exit_velocity_avg | 87.3 |
| sl_launch_angle_avg | 9.4 |
| sl_whiff_percent | 24.4 |
| sl_swing_percent | 60.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.131 | 0.000 | 0.000 | Hitting_2B | 0.131 | 0.000 | -0.131 | 0.000 |
| predicted_3B | 0.023 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 3.568 | 4.000 | 6.000 | Hitting_AB | 3.568 | 4.000 | 0.432 | 0.000 |
| predicted_AVG | 0.226 | 0.000 | 0.167 | Hitting_AVG | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_BB | 0.369 | 0.000 | 0.000 | Hitting_BB | 0.369 | 0.000 | -0.369 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.770 | 0.000 | 1.000 | Hitting_H | 0.707 | 0.000 | -0.707 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.063 | 0.000 | -0.063 | 0.000 |
| predicted_OBP | 0.271 | 0.000 | 0.167 | Hitting_OBP | 0.283 | 0.000 | -0.283 | 0.000 |
| predicted_R | 0.302 | 0.000 | 1.000 | Hitting_R | 0.302 | 0.000 | -0.302 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.324 | 0.000 | -0.324 | 0.000 |
| predicted_SLG | 0.386 | 0.000 | 0.167 | Hitting_SLG | 0.301 | 0.000 | -0.301 | 0.000 |
| predicted_SO | 1.203 | 2.000 | 2.000 | Hitting_SO | 1.203 | 3.000 | 0.797 | -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.2030 -> 2.0000 (boost 0.7970, worse) |
| Biggest Deboost | predicted_H: 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 | 10 | 8 | 2 | 7 | 3 | predicted_AB: 3.5680 -> 5.8900 (boost 2.3220, better) | predicted_AVG: 0.2260 -> 0.2178 (deboost -0.0082, 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.2178 -> 0.2078 (deboost -0.0100, 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_RBI: 0.6850 -> 1.0000 (boost 0.3150, better) | predicted_BB: 0.4484 -> 0.0000 (deboost -0.4484, worse) | AB rounded to 6 (raw=5.89), rates preserved: AVG=0.208 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5511 -> 1.0000 (boost 0.4489, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3772 -> 0.1670 (deboost -0.2102, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 0 | 4 | 0 | 4 | - | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3772 (boost 0.2102, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666969",
"player_name": "Adolis García",
"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.131,
"predicted_3B": 0.023,
"predicted_AB": 3.568,
"predicted_AVG": 0.226,
"predicted_BB": 0.369,
"predicted_H": 0.77,
"predicted_HR": 0.14,
"predicted_OBP": 0.271,
"predicted_R": 0.302,
"predicted_RBI": 0.41,
"predicted_SLG": 0.386,
"predicted_SO": 1.203
},
"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.2235,
"predicted_3B": 0.0274,
"predicted_AB": 5.89,
"predicted_AVG": 0.2178,
"predicted_BB": 0.4501,
"predicted_H": 1.2379,
"predicted_HBP": 0.113,
"predicted_HR": 0.2449,
"predicted_OBP": 0.2656,
"predicted_R": 0.5602,
"predicted_RBI": 0.6964,
"predicted_SLG": 0.3841,
"predicted_SO": 2.0424
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.131,
"after": 0.2235,
"delta": 0.0925,
"percent_delta": 0.7061,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0274,
"delta": 0.0044,
"percent_delta": 0.1913,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.568,
"after": 5.89,
"delta": 2.322,
"percent_delta": 0.6508,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2178,
"delta": -0.0082,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.369,
"after": 0.4501,
"delta": 0.0811,
"percent_delta": 0.2198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.2379,
"delta": 0.4679,
"percent_delta": 0.6077,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2449,
"delta": 0.1049,
"percent_delta": 0.7493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.271,
"after": 0.2656,
"delta": -0.0054,
"percent_delta": -0.0199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.302,
"after": 0.5602,
"delta": 0.2582,
"percent_delta": 0.855,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6964,
"delta": 0.2864,
"percent_delta": 0.6985,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.386,
"after": 0.3841,
"delta": -0.0019,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.203,
"after": 2.0424,
"delta": 0.8394,
"percent_delta": 0.6978,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.568,
"after": 5.89,
"delta": 2.322,
"percent_delta": 0.6508,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2178,
"delta": -0.0082,
"percent_delta": -0.0363,
"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.2235,
"predicted_3B": 0.0274,
"predicted_AB": 5.89,
"predicted_AVG": 0.2078,
"predicted_BB": 0.4484,
"predicted_H": 1.2242,
"predicted_HBP": 0.113,
"predicted_HR": 0.2398,
"predicted_OBP": 0.2639,
"predicted_R": 0.5511,
"predicted_RBI": 0.685,
"predicted_SLG": 0.3772,
"predicted_SO": 2.0502
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2235,
"after": 0.2235,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0274,
"after": 0.0274,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.89,
"after": 5.89,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2178,
"after": 0.2078,
"delta": -0.01,
"percent_delta": -0.0459,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4501,
"after": 0.4484,
"delta": -0.0017,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2379,
"after": 1.2242,
"delta": -0.0137,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.113,
"after": 0.113,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2449,
"after": 0.2398,
"delta": -0.0051,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2656,
"after": 0.2639,
"delta": -0.0017,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5602,
"after": 0.5511,
"delta": -0.0091,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6964,
"after": 0.685,
"delta": -0.0114,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3841,
"after": 0.3772,
"delta": -0.0069,
"percent_delta": -0.018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0424,
"after": 2.0502,
"delta": 0.0078,
"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.2178,
"after": 0.2078,
"delta": -0.01,
"percent_delta": -0.0459,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.89), rates preserved: AVG=0.208 HR/AB=0.041",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2235,
"after": 0.0,
"delta": -0.2235,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0274,
"after": 0.0,
"delta": -0.0274,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.89,
"after": 6.0,
"delta": 0.11,
"percent_delta": 0.0187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4484,
"after": 0.0,
"delta": -0.4484,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2242,
"after": 1.0,
"delta": -0.2242,
"percent_delta": -0.1831,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.113,
"after": 0.0,
"delta": -0.113,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2398,
"after": 0.0,
"delta": -0.2398,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.685,
"after": 1.0,
"delta": 0.315,
"percent_delta": 0.4599,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0502,
"after": 2.0,
"delta": -0.0502,
"percent_delta": -0.0245,
"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_RBI",
"before": 0.685,
"after": 1.0,
"delta": 0.315,
"percent_delta": 0.4599,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4484,
"after": 0.0,
"delta": -0.4484,
"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": 6.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": 6.0,
"after": 6.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.5511,
"after": 1.0,
"delta": 0.4489,
"percent_delta": 0.8146,
"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": 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_R",
"before": 0.5511,
"after": 1.0,
"delta": 0.4489,
"percent_delta": 0.8146,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.167,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2078,
"after": 0.167,
"delta": -0.0408,
"percent_delta": -0.1963,
"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.2639,
"after": 0.167,
"delta": -0.0969,
"percent_delta": -0.3672,
"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.3772,
"after": 0.167,
"delta": -0.2102,
"percent_delta": -0.5573,
"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_SLG",
"before": 0.3772,
"after": 0.167,
"delta": -0.2102,
"percent_delta": -0.5573,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 2.0,
"after": 2.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_AB",
"before": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2078,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2639,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3772,
"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.167,
"after": 0.2078,
"delta": 0.0408,
"percent_delta": 0.2445,
"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.167,
"after": 0.2639,
"delta": 0.0969,
"percent_delta": 0.5801,
"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.167,
"after": 0.3772,
"delta": 0.2102,
"percent_delta": 1.2589,
"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.167,
"after": 0.3772,
"delta": 0.2102,
"percent_delta": 1.2589,
"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.131,
"after": 0.0,
"delta": -0.131,
"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": 3.568,
"after": 4.0,
"delta": 0.432,
"percent_delta": 0.1211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2078,
"delta": -0.0182,
"percent_delta": -0.0805,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.369,
"after": 0.0,
"delta": -0.369,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"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.271,
"after": 0.2639,
"delta": -0.0071,
"percent_delta": -0.0262,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.302,
"after": 0.0,
"delta": -0.302,
"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.386,
"after": 0.3772,
"delta": -0.0088,
"percent_delta": -0.0228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.203,
"after": 2.0,
"delta": 0.797,
"percent_delta": 0.6625,
"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.203,
"after": 2.0,
"delta": 0.797,
"percent_delta": 0.6625,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"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.131 | - |
| predicted_3B | 0.023 | - |
| predicted_AB | 3.568 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.369 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.271 | - |
| predicted_R | 0.302 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.386 | - |
| predicted_SO | 1.203 | - |
Final model 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.224 | 0.092 |
| predicted_3B | 0.027 | 0.004 |
| predicted_AB | 5.890 | 2.322 |
| predicted_AVG | 0.218 | -0.008 |
| predicted_BB | 0.450 | 0.081 |
| predicted_H | 1.238 | 0.468 |
| predicted_HBP | 0.113 | - |
| predicted_HR | 0.245 | 0.105 |
| predicted_OBP | 0.266 | -0.005 |
| predicted_R | 0.560 | 0.258 |
| predicted_RBI | 0.696 | 0.286 |
| predicted_SLG | 0.384 | -0.002 |
| predicted_SO | 2.042 | 0.839 |
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.224 | 0.000 |
| predicted_3B | 0.027 | 0.000 |
| predicted_AB | 5.890 | 0.000 |
| predicted_AVG | 0.208 | -0.010 |
| predicted_BB | 0.448 | -0.002 |
| predicted_H | 1.224 | -0.014 |
| predicted_HBP | 0.113 | 0.000 |
| predicted_HR | 0.240 | -0.005 |
| predicted_OBP | 0.264 | -0.002 |
| predicted_R | 0.551 | -0.009 |
| predicted_RBI | 0.685 | -0.011 |
| predicted_SLG | 0.377 | -0.007 |
| predicted_SO | 2.050 | 0.008 |
AB rounded to 6 (raw=5.89), rates preserved: AVG=0.208 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 6.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 | 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.224 |
| predicted_3B | 0.000 | -0.027 |
| predicted_AB | 6.000 | 0.110 |
| predicted_AVG | 0.167 | -0.041 |
| predicted_BB | 0.000 | -0.448 |
| predicted_H | 1.000 | -0.224 |
| predicted_HR | 0.000 | -0.240 |
| predicted_OBP | 0.167 | -0.097 |
| predicted_R | 1.000 | 0.449 |
| predicted_RBI | 1.000 | 0.315 |
| predicted_SLG | 0.167 | -0.210 |
| predicted_SO | 2.000 | -0.050 |
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 | -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 | 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 | 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 | 5.000 | 1.000 | 0.000 | 2.000 | 4.000 | 3.000 | 0.000 | 7.000 | 0.2632 | 0.2632 | 0.6316 | 0.2632 | 0.1053 | 0.2105 | 0.0000 | 0.3684 |
| last_10 | 0.20 | 10 | - | 35.000 | 6.000 | 1.000 | 0.000 | 2.000 | 4.000 | 3.000 | 0.000 | 14.000 | 0.1714 | 0.1714 | 0.3714 | 0.1714 | 0.0571 | 0.1143 | 0.0000 | 0.4000 |
| season | 0.60 | 63 | - | 792.000 | 157.000 | 29.000 | 5.000 | 14.000 | 72.000 | 67.000 | 82.000 | 267.000 | 0.1982 | 0.2832 | 0.3005 | 0.1982 | 0.0177 | 0.0909 | 0.1035 | 0.3371 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3410 |
| predicted_3B | 0.0330 |
| predicted_AB | 8.8380 |
| predicted_AVG | 0.2073 |
| predicted_BB | 0.5530 |
| predicted_H | 1.8320 |
| predicted_HBP | 0.1130 |
| predicted_HR | 0.3780 |
| predicted_OBP | 0.2587 |
| predicted_R | 0.8880 |
| predicted_RBI | 1.0600 |
| predicted_SLG | 0.3818 |
| predicted_SO | 3.1080 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1310 | 0.3410 | 0.2235 | model_form_blend |
| predicted_3B | 0.0230 | 0.0330 | 0.0274 | model_form_blend |
| predicted_AB | 3.5680 | 8.8380 | 5.8900 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2073 | 0.2178 | model_form_blend |
| predicted_BB | 0.3690 | 0.5530 | 0.4501 | model_form_blend |
| predicted_H | 0.7700 | 1.8320 | 1.2379 | model_form_blend |
| predicted_HBP | - | 0.1130 | 0.1130 | form_only |
| predicted_HR | 0.1400 | 0.3780 | 0.2449 | model_form_blend |
| predicted_OBP | 0.2710 | 0.2587 | 0.2656 | model_form_blend |
| predicted_R | 0.3020 | 0.8880 | 0.5602 | model_form_blend |
| predicted_RBI | 0.4100 | 1.0600 | 0.6964 | model_form_blend |
| predicted_SLG | 0.3860 | 0.3818 | 0.3841 | model_form_blend |
| predicted_SO | 1.2030 | 3.1080 | 2.0424 | 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 | 222 |
| Season rows before report date | 222 |
| Report year | 2026 |
| Profile rows used | 222 |
| 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.198 |
| 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 | RF |
| gameID | 20260607_CHW@PHI |
| game_type | full |
| mlbID | 666969 |
| playerID | 666969 |
| playerName | Adolis García |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-07 |
| sl_k_percent | 31.5 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.271 |
| sl_xwoba | 0.295 |
| sl_xba | 0.222 |
| sl_xslg | 0.361 |
| sl_sweet_spot_percent | 38.4 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 47.3 |
| sl_exit_velocity_avg | 92.0 |
| sl_launch_angle_avg | 14.9 |
| sl_whiff_percent | 34.0 |
| 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_2B | 0.189 | 1.000 | 0.000 | Hitting_2B | 0.189 | 0.000 | 0.811 | 1.000 |
| predicted_3B | 0.045 | 0.000 | 0.000 | Hitting_3B | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_AB | 3.731 | 3.000 | 6.000 | Hitting_AB | 3.731 | 4.000 | -0.731 | -1.000 |
| predicted_AVG | 0.288 | 0.333 | 0.333 | Hitting_AVG | 0.341 | 0.500 | -0.008 | -0.167 |
| predicted_BB | 0.204 | 0.000 | 0.000 | Hitting_BB | 0.204 | 1.000 | -0.204 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_H | 0.920 | 1.000 | 2.000 | Hitting_H | 1.274 | 2.000 | -0.274 | -1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.129 | 1.000 | -0.129 | -1.000 |
| predicted_OBP | 0.364 | 0.333 | 0.333 | Hitting_OBP | 0.373 | 0.600 | -0.039 | -0.267 |
| predicted_R | 0.632 | 0.000 | 1.000 | Hitting_R | 0.632 | 2.000 | -0.632 | -2.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.582 | 2.000 | -0.582 | -2.000 |
| predicted_SLG | 0.526 | 0.667 | 0.333 | Hitting_SLG | 0.520 | 1.250 | 0.147 | -0.583 |
| predicted_SO | 0.776 | 1.000 | 1.000 | Hitting_SO | 0.776 | 1.000 | 0.224 | 0.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_2B: 0.1890 -> 1.0000 (boost 0.8110, better) |
| Biggest Deboost | predicted_AB: 3.7310 -> 3.0000 (deboost -0.7310, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.7310 -> 6.0117 (boost 2.2807, 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.3800 -> 0.3578 (deboost -0.0222, 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: 1.9390 -> 2.0000 (boost 0.0610, better) | predicted_SO: 1.3922 -> 1.0000 (deboost -0.3922, better) | AB rounded to 6 (raw=6.01), rates preserved: AVG=0.323 HR/AB=0.057 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.3225 -> 0.3330 (boost 0.0105, better) | predicted_SLG: 0.5642 -> 0.3330 (deboost -0.2312, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.5642 (boost 0.2312, better) | predicted_AVG: 0.3330 -> 0.3225 (deboost -0.0105, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669016",
"player_name": "Brandon Marsh",
"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.189,
"predicted_3B": 0.045,
"predicted_AB": 3.731,
"predicted_AVG": 0.288,
"predicted_BB": 0.204,
"predicted_H": 0.92,
"predicted_HR": 0.16,
"predicted_OBP": 0.364,
"predicted_R": 0.632,
"predicted_RBI": 0.51,
"predicted_SLG": 0.526,
"predicted_SO": 0.776
},
"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.3099,
"predicted_3B": 0.0529,
"predicted_AB": 6.0117,
"predicted_AVG": 0.3234,
"predicted_BB": 0.3315,
"predicted_H": 1.9608,
"predicted_HBP": 0.03,
"predicted_HR": 0.353,
"predicted_OBP": 0.38,
"predicted_R": 1.0188,
"predicted_RBI": 1.0181,
"predicted_SLG": 0.5746,
"predicted_SO": 1.3869
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.189,
"after": 0.3099,
"delta": 0.1209,
"percent_delta": 0.6397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.045,
"after": 0.0529,
"delta": 0.0079,
"percent_delta": 0.1756,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.731,
"after": 6.0117,
"delta": 2.2807,
"percent_delta": 0.6113,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.288,
"after": 0.3234,
"delta": 0.0354,
"percent_delta": 0.1229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.204,
"after": 0.3315,
"delta": 0.1275,
"percent_delta": 0.625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 1.9608,
"delta": 1.0408,
"percent_delta": 1.1313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.353,
"delta": 0.193,
"percent_delta": 1.2062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.364,
"after": 0.38,
"delta": 0.016,
"percent_delta": 0.044,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.632,
"after": 1.0188,
"delta": 0.3868,
"percent_delta": 0.612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 1.0181,
"delta": 0.5081,
"percent_delta": 0.9963,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.526,
"after": 0.5746,
"delta": 0.0486,
"percent_delta": 0.0924,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.776,
"after": 1.3869,
"delta": 0.6109,
"percent_delta": 0.7872,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.731,
"after": 6.0117,
"delta": 2.2807,
"percent_delta": 0.6113,
"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.3099,
"predicted_3B": 0.0529,
"predicted_AB": 6.0117,
"predicted_AVG": 0.3225,
"predicted_BB": 0.3302,
"predicted_H": 1.939,
"predicted_HBP": 0.03,
"predicted_HR": 0.3457,
"predicted_OBP": 0.3578,
"predicted_R": 1.0022,
"predicted_RBI": 1.0015,
"predicted_SLG": 0.5642,
"predicted_SO": 1.3922
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3099,
"after": 0.3099,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0529,
"after": 0.0529,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0117,
"after": 6.0117,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3234,
"after": 0.3225,
"delta": -0.0009,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3315,
"after": 0.3302,
"delta": -0.0013,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9608,
"after": 1.939,
"delta": -0.0218,
"percent_delta": -0.0111,
"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.353,
"after": 0.3457,
"delta": -0.0073,
"percent_delta": -0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.38,
"after": 0.3578,
"delta": -0.0222,
"percent_delta": -0.0584,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0188,
"after": 1.0022,
"delta": -0.0166,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0181,
"after": 1.0015,
"delta": -0.0166,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5746,
"after": 0.5642,
"delta": -0.0104,
"percent_delta": -0.0181,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3869,
"after": 1.3922,
"delta": 0.0053,
"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_OBP",
"before": 0.38,
"after": 0.3578,
"delta": -0.0222,
"percent_delta": -0.0584,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.01), rates preserved: AVG=0.323 HR/AB=0.057",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.3099,
"after": 0.0,
"delta": -0.3099,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0529,
"after": 0.0,
"delta": -0.0529,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.0117,
"after": 6.0,
"delta": -0.0117,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3302,
"after": 0.0,
"delta": -0.3302,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.939,
"after": 2.0,
"delta": 0.061,
"percent_delta": 0.0315,
"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.3457,
"after": 0.0,
"delta": -0.3457,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0015,
"after": 1.0,
"delta": -0.0015,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.3922,
"after": 1.0,
"delta": -0.3922,
"percent_delta": -0.2817,
"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": 1.939,
"after": 2.0,
"delta": 0.061,
"percent_delta": 0.0315,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3922,
"after": 1.0,
"delta": -0.3922,
"percent_delta": -0.2817,
"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": 6.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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 1.0022,
"after": 1.0,
"delta": -0.0022,
"percent_delta": -0.0022,
"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_SO",
"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": 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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 2.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3225,
"after": 0.333,
"delta": 0.0105,
"percent_delta": 0.0326,
"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": 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_OBP",
"before": 0.3578,
"after": 0.333,
"delta": -0.0248,
"percent_delta": -0.0693,
"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.5642,
"after": 0.333,
"delta": -0.2312,
"percent_delta": -0.4098,
"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.3225,
"after": 0.333,
"delta": 0.0105,
"percent_delta": 0.0326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5642,
"after": 0.333,
"delta": -0.2312,
"percent_delta": -0.4098,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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_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": 6.0,
"after": 3.0,
"delta": -3.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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.3225,
"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.3578,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5642,
"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": 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.3225,
"delta": -0.0105,
"percent_delta": -0.0314,
"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.3578,
"delta": 0.0248,
"percent_delta": 0.0745,
"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.5642,
"delta": 0.2312,
"percent_delta": 0.6942,
"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.5642,
"delta": 0.2312,
"percent_delta": 0.6942,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.3225,
"delta": -0.0105,
"percent_delta": -0.0314,
"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.189,
"after": 1.0,
"delta": 0.811,
"percent_delta": 4.291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.045,
"after": 0.0,
"delta": -0.045,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.731,
"after": 3.0,
"delta": -0.731,
"percent_delta": -0.1959,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.288,
"after": 0.3225,
"delta": 0.0345,
"percent_delta": 0.1198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.204,
"after": 0.0,
"delta": -0.204,
"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.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.364,
"after": 0.3578,
"delta": -0.0062,
"percent_delta": -0.017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.632,
"after": 0.0,
"delta": -0.632,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.526,
"after": 0.5642,
"delta": 0.0382,
"percent_delta": 0.0726,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.776,
"after": 1.0,
"delta": 0.224,
"percent_delta": 0.2887,
"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_2B",
"before": 0.189,
"after": 1.0,
"delta": 0.811,
"percent_delta": 4.291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.731,
"after": 3.0,
"delta": -0.731,
"percent_delta": -0.1959,
"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.189 | - |
| predicted_3B | 0.045 | - |
| predicted_AB | 3.731 | - |
| predicted_AVG | 0.288 | - |
| predicted_BB | 0.204 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.364 | - |
| predicted_R | 0.632 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.526 | - |
| predicted_SO | 0.776 | - |
Final model 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.310 | 0.121 |
| predicted_3B | 0.053 | 0.008 |
| predicted_AB | 6.012 | 2.281 |
| predicted_AVG | 0.323 | 0.035 |
| predicted_BB | 0.332 | 0.128 |
| predicted_H | 1.961 | 1.041 |
| predicted_HBP | 0.030 | - |
| predicted_HR | 0.353 | 0.193 |
| predicted_OBP | 0.380 | 0.016 |
| predicted_R | 1.019 | 0.387 |
| predicted_RBI | 1.018 | 0.508 |
| predicted_SLG | 0.575 | 0.049 |
| predicted_SO | 1.387 | 0.611 |
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.310 | 0.000 |
| predicted_3B | 0.053 | 0.000 |
| predicted_AB | 6.012 | 0.000 |
| predicted_AVG | 0.323 | -0.001 |
| predicted_BB | 0.330 | -0.001 |
| predicted_H | 1.939 | -0.022 |
| predicted_HBP | 0.030 | 0.000 |
| predicted_HR | 0.346 | -0.007 |
| predicted_OBP | 0.358 | -0.022 |
| predicted_R | 1.002 | -0.017 |
| predicted_RBI | 1.002 | -0.017 |
| predicted_SLG | 0.564 | -0.010 |
| predicted_SO | 1.392 | 0.005 |
AB rounded to 6 (raw=6.01), rates preserved: AVG=0.323 HR/AB=0.057
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 0.000 | - |
| H | 2.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 | 6.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.310 |
| predicted_3B | 0.000 | -0.053 |
| predicted_AB | 6.000 | -0.012 |
| predicted_AVG | 0.333 | 0.011 |
| predicted_BB | 0.000 | -0.330 |
| predicted_H | 2.000 | 0.061 |
| predicted_HR | 0.000 | -0.346 |
| predicted_OBP | 0.333 | -0.025 |
| predicted_R | 1.000 | -0.002 |
| predicted_RBI | 1.000 | -0.002 |
| predicted_SLG | 0.333 | -0.231 |
| predicted_SO | 1.000 | -0.392 |
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 | -3.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | 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 | 1.000 | 0.000 | 3.000 | 6.000 | 4.000 | 1.000 | 6.000 | 0.4000 | 0.4286 | 0.9000 | 0.4000 | 0.1500 | 0.3000 | 0.0500 | 0.3000 |
| last_10 | 0.20 | 10 | - | 34.000 | 15.000 | 2.000 | 0.000 | 3.000 | 6.000 | 5.000 | 2.000 | 10.000 | 0.4412 | 0.4722 | 0.7647 | 0.4412 | 0.0882 | 0.1765 | 0.0588 | 0.2941 |
| season | 0.60 | 59 | - | 750.000 | 256.000 | 38.000 | 9.000 | 26.000 | 117.000 | 127.000 | 41.000 | 156.000 | 0.3413 | 0.3725 | 0.5200 | 0.3413 | 0.0347 | 0.1560 | 0.0547 | 0.2080 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4640 |
| predicted_3B | 0.0630 |
| predicted_AB | 8.9200 |
| predicted_AVG | 0.3686 |
| predicted_BB | 0.4940 |
| predicted_H | 3.2880 |
| predicted_HBP | 0.0300 |
| predicted_HR | 0.5990 |
| predicted_OBP | 0.4004 |
| predicted_R | 1.5120 |
| predicted_RBI | 1.6660 |
| predicted_SLG | 0.6365 |
| predicted_SO | 2.1660 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1890 | 0.4640 | 0.3099 | model_form_blend |
| predicted_3B | 0.0450 | 0.0630 | 0.0529 | model_form_blend |
| predicted_AB | 3.7310 | 8.9200 | 6.0117 | model_form_blend |
| predicted_AVG | 0.2880 | 0.3686 | 0.3234 | model_form_blend |
| predicted_BB | 0.2040 | 0.4940 | 0.3315 | model_form_blend |
| predicted_H | 0.9200 | 3.2880 | 1.9608 | model_form_blend |
| predicted_HBP | - | 0.0300 | 0.0300 | form_only |
| predicted_HR | 0.1600 | 0.5990 | 0.3530 | model_form_blend |
| predicted_OBP | 0.3640 | 0.4004 | 0.3800 | model_form_blend |
| predicted_R | 0.6320 | 1.5120 | 1.0188 | model_form_blend |
| predicted_RBI | 0.5100 | 1.6660 | 1.0181 | model_form_blend |
| predicted_SLG | 0.5260 | 0.6365 | 0.5746 | model_form_blend |
| predicted_SO | 0.7760 | 2.1660 | 1.3869 | 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 | 201 |
| Season rows before report date | 201 |
| Report year | 2026 |
| Profile rows used | 201 |
| 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 | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.341 |
| 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 | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| 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 | LF |
| gameID | 20260607_CHW@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-07 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 4.8 |
| sl_woba | 0.384 |
| sl_xwoba | 0.345 |
| sl_xba | 0.304 |
| sl_xslg | 0.469 |
| sl_sweet_spot_percent | 47.0 |
| sl_barrel_batted_rate | 8.0 |
| sl_hard_hit_percent | 47.6 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 12.8 |
| sl_whiff_percent | 22.5 |
| 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 | 4.000 | 4.000 | 4.000 | Pitching_BB | 1.308 | 1.000 | 2.692 | 3.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.077 | 1.000 | -0.077 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 5.923 | 4.000 | -3.923 | -2.000 |
| predicted_IP | 7.000 | 7.000 | 7.000 | Pitching_InningsPitched | 6.569 | 7.000 | 0.431 | 0.000 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 7.923 | 8.000 | -3.923 | -4.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 3 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 2 |
| Better Metrics | 2 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_SO: 3.0000 -> 4.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_ER: 2.0000 -> 1.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 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 7.3333 -> 7.0000 (deboost -0.3333, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | pitcher_quality_guardrail | 2 | 1 | 1 | 2 | 0 | predicted_SO: 3.0000 -> 8.0000 (boost 5.0000, better) | predicted_ER: 2.0000 -> 1.0000 (deboost -1.0000, better) | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 4 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_SO: 8.0000 -> 4.0000 (deboost -4.0000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "650911",
"player_name": "Cristopher Sánchez",
"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": 4.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 7.3333,
"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_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 4.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 7.0,
"predicted_SO": 3.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": 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": 7.3333,
"after": 7.0,
"delta": -0.3333,
"percent_delta": -0.0455,
"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": 7.3333,
"after": 7.0,
"delta": -0.3333,
"percent_delta": -0.0455,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"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": 4.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 7.0,
"predicted_SO": 8.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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 8.0,
"delta": 5.0,
"percent_delta": 1.6667,
"direction": "boost",
"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_SO",
"before": 3.0,
"after": 8.0,
"delta": 5.0,
"percent_delta": 1.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 4.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 7.0,
"predicted_R": 1.0,
"predicted_SO": 4.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": 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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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": 8.0,
"after": 4.0,
"delta": -4.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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"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": 7.3333,
"after": 7.0,
"delta": -0.3333,
"percent_delta": -0.0455,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"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_SO",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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 | 4.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 7.333 | - |
| predicted_SO | 3.000 | - |
Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 4.000 | 0.000 |
| predicted_ER | 2.000 | 0.000 |
| predicted_H | 2.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 7.000 | -0.333 |
| predicted_SO | 3.000 | 0.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 | 4.000 | 0.000 |
| predicted_ER | 1.000 | -1.000 |
| predicted_H | 2.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 7.000 | 0.000 |
| predicted_SO | 8.000 | 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 | 38.000 | 1.000 | 26.000 | 3.000 | 43.000 | 0.000 | 0.2368 | 0.7632 | 0.0263 | 0.6842 | 0.0790 | 1.1316 | 0.0000 |
| last_10 | 0.35 | 10 | 70.000 | 11.000 | 59.000 | 13.000 | 80.000 | 3.000 | 1.4143 | 1.0286 | 0.1571 | 0.8429 | 0.1857 | 1.1429 | 0.0429 |
| season | 0.20 | 13 | 86.100 | 14.000 | 77.000 | 17.000 | 103.000 | 3.000 | 1.4595 | 1.0888 | 0.1622 | 0.8919 | 0.1969 | 1.1930 | 0.0348 |
| Metric | Value |
|---|---|
| predicted_BB | 1.4690 |
| predicted_ER | 1.4990 |
| predicted_ERA | 1.8574 |
| predicted_H | 6.0280 |
| predicted_HR | 0.3960 |
| predicted_IP | 7.1000 |
| predicted_SO | 7.9040 |
| predicted_WHIP | 1.0325 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 4.0000 | 1.4690 | 2.6519 | model_form_blend |
| predicted_ER | 2.0000 | 1.4990 | 1.7332 | model_form_blend |
| predicted_ERA | - | 1.8574 | 1.8574 | form_only |
| predicted_H | 2.0000 | 6.0280 | 4.1454 | model_form_blend |
| predicted_HR | 1.0000 | 0.3960 | 0.6783 | model_form_blend |
| predicted_IP | 7.1000 | 7.1000 | 7.1000 | model_form_blend |
| predicted_SO | 3.0000 | 7.9040 | 5.6120 | model_form_blend |
| predicted_WHIP | - | 1.0325 | 1.0325 | 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 | 7.0 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 4 |
| SO | 4 |
| HR | 1 |
| BF | 27 |
| Pitches | 110 |
| 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 | 26 |
| Pitching_ER | 1 |
| Pitching_ERA | 1.46 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 8 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 7.0 |
| Pitching_Pitches | 84 |
| Pitching_R | 1 |
| Pitching_SO | 8 |
| Pitching_Strikes | 64 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260603_SD@PHI |
| game_type | full |
| mlbID | 650911 |
| playerID | 650911 |
| playerName | Cristopher Sánchez |
| pos | P |
| started | True |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-03 |
| sl_k_percent | 29.5 |
| sl_bb_percent | 4.9 |
| sl_woba | 0.262 |
| sl_xwoba | 0.267 |
| sl_sweet_spot_percent | 28.5 |
| sl_barrel_batted_rate | 8.3 |
| sl_hard_hit_percent | 44.3 |
| sl_whiff_percent | 33.4 |
| sl_swing_percent | 50.3 |
| sl_avg_best_speed | 77.839629204 |
| sl_avg_hyper_speed | 94.755528982 |
| 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 | 0.000 | -0.227 | 0.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.545 | 0.000 | -0.545 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.918 | 1.000 | 0.082 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.500 | 2.000 | -1.500 | -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: 1.0000 -> 0.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 | current_json_final | 1 | 0 | 1 | 1 | 0 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.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": 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": 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": 1.0,
"after": 0.0,
"delta": -1.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": 1.0,
"after": 0.0,
"delta": -1.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": 1.0,
"after": 0.0,
"delta": -1.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": 1.0,
"after": 0.0,
"delta": -1.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 | 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 | 0.000 | 0.000 | 9.000 | 0.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 1.8000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 1.000 | 4.000 | 1.000 | 17.000 | 1.000 | 0.9000 | 0.5000 | 0.1000 | 0.4000 | 0.1000 | 1.7000 | 0.1000 |
| season | 0.20 | 21 | 20.200 | 3.000 | 12.000 | 5.000 | 33.000 | 1.000 | 1.3065 | 0.8226 | 0.1452 | 0.5806 | 0.2419 | 1.5968 | 0.0484 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2380 |
| predicted_ER | 0.2960 |
| predicted_ERA | 2.6615 |
| predicted_H | 0.6420 |
| predicted_HR | 0.0970 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2890 |
| predicted_WHIP | 0.8805 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2380 | 0.0993 | model_form_blend |
| predicted_ER | 0.0000 | 0.2960 | 0.1235 | model_form_blend |
| predicted_ERA | - | 2.6615 | 2.6615 | form_only |
| predicted_H | 1.0000 | 0.6420 | 0.8506 | model_form_blend |
| predicted_HR | 0.0000 | 0.0970 | 0.0405 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.2890 | 0.5380 | model_form_blend |
| predicted_WHIP | - | 0.8805 | 0.8805 | 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 | 21 |
| 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 | 1.31 |
| 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 | 16 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260605_CHW@PHI |
| game_type | full |
| mlbID | 661395 |
| playerID | 661395 |
| playerName | Jhoan Duran |
| pos | P |
| started | False |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-05 |
| sl_k_percent | 42.9 |
| sl_bb_percent | 6.5 |
| sl_woba | 0.21 |
| sl_xwoba | 0.235 |
| sl_sweet_spot_percent | 28.2 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 53.8 |
| sl_whiff_percent | 41.9 |
| sl_swing_percent | 50.8 |
| sl_avg_best_speed | 85.289962 |
| sl_avg_hyper_speed | 95.786511795 |
| 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.321 | 0.000 | 0.679 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.393 | 0.000 | 0.607 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.893 | 1.000 | 0.107 | 0.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.946 | 1.000 | -0.746 | -0.800 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.036 | 0.000 | -1.036 | 0.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_ER: 0.0000 -> 1.0000 (boost 1.0000, worse) |
| 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 | pitcher_quality_run_redistribution | 3 | 2 | 1 | 0 | 3 | predicted_ER: 0.0000 -> 1.0000 (boost 1.0000, worse) | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, 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": "641745",
"player_name": "Brad Keller",
"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": 0.6667,
"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": "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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.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.6667,
"after": 0.2,
"delta": -0.4667,
"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": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 3,
"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.6667,
"after": 0.2,
"delta": -0.4667,
"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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 1.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": 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.2,
"after": 0.2,
"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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.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.6667,
"after": 0.2,
"delta": -0.4667,
"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": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 3,
"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.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 | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 0.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 | 1.000 | 0.000 |
| predicted_ER | 1.000 | 1.000 |
| predicted_H | 1.000 | 1.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 0.200 | -0.467 |
| predicted_SO | 0.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 | 7.000 | 2.000 | 3.000 | 1.000 | 3.6000 | 1.8000 | 0.4000 | 1.4000 | 0.4000 | 0.6000 | 0.2000 |
| last_10 | 0.35 | 10 | 10.000 | 3.000 | 9.000 | 3.000 | 8.000 | 2.000 | 2.7000 | 1.2000 | 0.3000 | 0.9000 | 0.3000 | 0.8000 | 0.2000 |
| season | 0.20 | 28 | 27.200 | 11.000 | 25.000 | 9.000 | 29.000 | 4.000 | 3.5783 | 1.2289 | 0.3976 | 0.9036 | 0.3253 | 1.0482 | 0.1446 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3000 |
| predicted_ER | 0.3550 |
| predicted_ERA | 3.7981 |
| predicted_H | 0.8790 |
| predicted_HR | 0.1390 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7090 |
| predicted_WHIP | 1.4023 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3000 | 0.6863 | model_form_blend |
| predicted_ER | 0.0000 | 0.3550 | 0.1591 | model_form_blend |
| predicted_ERA | - | 3.7981 | 3.7981 | form_only |
| predicted_H | 0.0000 | 0.8790 | 0.3939 | model_form_blend |
| predicted_HR | 0.0000 | 0.1390 | 0.0623 | model_form_blend |
| predicted_IP | 0.2000 | 1.0000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7090 | 0.3177 | model_form_blend |
| predicted_WHIP | - | 1.4023 | 1.4023 | 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 | 1 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| 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 | 3.58 |
| 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 | 15 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260605_CHW@PHI |
| game_type | full |
| mlbID | 641745 |
| playerID | 641745 |
| playerName | Brad Keller |
| pos | P |
| started | False |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-05 |
| sl_k_percent | 25.0 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.307 |
| sl_xwoba | 0.279 |
| sl_sweet_spot_percent | 27.6 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 32.9 |
| sl_whiff_percent | 22.8 |
| sl_swing_percent | 46.3 |
| sl_avg_best_speed | 73.723748684 |
| sl_avg_hyper_speed | 92.797224133 |
| 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.222 | 0.000 | -0.222 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.704 | 1.000 | 0.296 | 0.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 0.815 | 1.000 | -0.715 | -0.900 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.000 | 2.000 | -1.000 | -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_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": "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": 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": 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.1,
"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": 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": 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 | 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 | 5.000 | 1.000 | 5.000 | 4.000 | 9.000 | 0.000 | 1.8000 | 1.8000 | 0.2000 | 1.0000 | 0.8000 | 1.8000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 2.000 | 7.000 | 5.000 | 16.000 | 0.000 | 2.0000 | 1.3333 | 0.2222 | 0.7778 | 0.5556 | 1.7778 | 0.0000 |
| season | 0.20 | 27 | 24.100 | 6.000 | 19.000 | 11.000 | 27.000 | 2.000 | 2.2192 | 1.2329 | 0.2466 | 0.7808 | 0.4521 | 1.1096 | 0.0822 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3310 |
| predicted_ER | 0.2330 |
| predicted_ERA | 3.1825 |
| predicted_H | 0.6060 |
| predicted_HR | 0.0520 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.8500 |
| predicted_WHIP | 1.4206 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3310 | 0.1438 | model_form_blend |
| predicted_ER | 0.0000 | 0.2330 | 0.1013 | model_form_blend |
| predicted_ERA | - | 3.1825 | 3.1825 | form_only |
| predicted_H | 1.0000 | 0.6060 | 0.8288 | model_form_blend |
| predicted_HR | 0.0000 | 0.0520 | 0.0226 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8500 | 0.9348 | model_form_blend |
| predicted_WHIP | - | 1.4206 | 1.4206 | 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 | 0.1 |
| H | 1 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.22 |
| 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 | 27 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 14 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_CHW@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-07 |
| sl_k_percent | 25.7 |
| sl_bb_percent | 10.5 |
| sl_woba | 0.289 |
| sl_xwoba | 0.25 |
| sl_sweet_spot_percent | 25.8 |
| sl_barrel_batted_rate | 6.1 |
| sl_hard_hit_percent | 21.2 |
| sl_whiff_percent | 26.1 |
| sl_swing_percent | 43.7 |
| sl_avg_best_speed | 68.857765 |
| sl_avg_hyper_speed | 91.565294688 |
| Field | Value |
|---|---|
| Pitcher | Patrick Corbin |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.5815 |
| ESPN Rank | 75 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 84.6454 |
| Avg Spin | 1978.0704 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 3 |
| Pre H | 6 |
| Pre BB | 1 |
| Pre SO | 4 |
| Season ERA | 3.9755 |
| Season WHIP | 1.3804 |
| Role Avg IP | 4.9390 |
| Recent Avg IP | 4.8670 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"opponent": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"edges": {
"quality_edge": -0.0256,
"offense_edge": -0.0586,
"opponent_offense_edge": -0.1144,
"defense_strength": 0.0837,
"opponent_defense_weakness": -0.0317,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0061,
"run_prevention": 0.9746,
"strikeout": 1.0084
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "571578",
"profile": {
"available": true,
"pitcher_id": "571578",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 210.0,
"k_percent": 15.8,
"bb_percent": 6.8,
"woba": 0.341,
"xwoba": 0.356,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 7.9,
"hard_hit_percent": 44.1,
"avg_best_speed": 77.8778,
"avg_hyper_speed": 94.6108,
"whiff_percent": 19.2,
"swing_percent": 48.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.808,
"command_and_miss": -0.6714,
"regression_edge": -0.4286,
"xwoba_edge": -1.1857,
"barrel_edge": -0.1778,
"hard_hit_edge": -0.7857,
"whiff_edge": -0.9429,
"bb_edge": 0.575,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "571578",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 78,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 78,
"pitch_usage": 0.0,
"release_speed": 84.64535351200053,
"release_spin_rate": 1978.0704052080189,
"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": 78,
"pitch_usage": 0.0,
"release_speed": 84.64535351200053,
"release_spin_rate": 1978.0704052080189,
"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.6454,
"release_spin_rate": 1978.0704,
"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.5815,
"sample_weight": 0.84,
"run_prevention_factor": 1.0494,
"strikeout_factor": 0.9342,
"walk_factor": 0.9614,
"homer_factor": 1.0682,
"woba_minus_xwoba": -0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "571578",
"espn_id": 31313,
"player_name": "Patrick Corbin",
"team": "TOR",
"role": "pitcher",
"espn_rank": 75,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 75,
"gp_value": 11.0,
"gp_rank": 347,
"gs_value": 11.0,
"gs_rank": 82,
"qs_value": 1.0,
"qs_rank": 130,
"era_value": 3.9754,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 54.1,
"ip_rank": 112,
"h_value": 59.0,
"h_rank": 76,
"er_value": 24.0,
"er_rank": 97,
"hr_value": 6.0,
"hr_rank": 102,
"bb_value": 16.0,
"bb_rank": 147,
"k_value": 37.0,
"k_rank": 147,
"k_per_9_value": 6.1288347,
"k_per_9_rank": 35,
"whip_value": 1.3803,
"whip_rank": null,
"war_value": 1.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0415,
"adjusted": 2
},
"predicted_H": {
"original": 6.0,
"factor": 1.0415,
"adjusted": 6
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9676,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0573,
"adjusted": 1
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9447,
"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": 50.1,
"ER": 20,
"H": 53,
"BB": 15,
"SO": 34,
"HR": 4,
"ERA": 3.5761589403973515,
"WHIP": 1.3509933774834437,
"K9": 6.079470198675497,
"HR9": 0.7152317880794703,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "571578",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 78,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 78,
"pitch_usage": 0.0,
"release_speed": 84.64535351200053,
"release_spin_rate": 1978.0704052080189,
"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": 78,
"pitch_usage": 0.0,
"release_speed": 84.64535351200053,
"release_spin_rate": 1978.0704052080189,
"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.6454,
"release_spin_rate": 1978.0704,
"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": 11.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6875,
"prior_weight": 0.3125
},
"role": "pitcher",
"player_id": "571578",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 11,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 24.1,
"ER": 12.0,
"R": 12.0,
"H": 30.0,
"BB": 7.0,
"SO": 16.0,
"HR": 3.0,
"BF": 110.0,
"Pitches": 414.0
},
"per_game": {
"IP": 5.0,
"ER": 2.4,
"R": 2.4,
"H": 6.0,
"BB": 1.4,
"SO": 3.2,
"HR": 0.6,
"BF": 22.0,
"Pitches": 82.8
},
"rates": {
"ERA": 4.4384,
"WHIP": 1.5205,
"ER_per_IP": 0.49315,
"H_per_IP": 1.23288,
"BB_per_IP": 0.28767,
"SO_per_IP": 0.65753,
"HR_per_IP": 0.12329
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 50.1,
"ER": 20.0,
"R": 20.0,
"H": 53.0,
"BB": 15.0,
"SO": 34.0,
"HR": 4.0,
"BF": 213.0,
"Pitches": 782.0
},
"per_game": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 5.3,
"BB": 1.5,
"SO": 3.4,
"HR": 0.4,
"BF": 21.3,
"Pitches": 78.2
},
"rates": {
"ERA": 3.5762,
"WHIP": 1.351,
"ER_per_IP": 0.39735,
"H_per_IP": 1.05298,
"BB_per_IP": 0.29801,
"SO_per_IP": 0.6755,
"HR_per_IP": 0.07947
}
},
"season": {
"games": 11,
"totals": {
"IP": 54.1,
"ER": 24.0,
"R": 24.0,
"H": 59.0,
"BB": 16.0,
"SO": 37.0,
"HR": 6.0,
"BF": 234.0,
"Pitches": 867.0
},
"per_game": {
"IP": 5.0,
"ER": 2.1818,
"R": 2.1818,
"H": 5.3636,
"BB": 1.4545,
"SO": 3.3636,
"HR": 0.5455,
"BF": 21.2727,
"Pitches": 78.8182
},
"rates": {
"ERA": 3.9755,
"WHIP": 1.3804,
"ER_per_IP": 0.44172,
"H_per_IP": 1.08589,
"BB_per_IP": 0.29448,
"SO_per_IP": 0.68098,
"HR_per_IP": 0.11043
}
}
},
"weighted_prediction": {
"predicted_IP": 5.0,
"predicted_ER": 2.302,
"predicted_H": 5.417,
"predicted_BB": 1.575,
"predicted_SO": 3.758,
"predicted_HR": 0.58,
"predicted_ERA": 4.1438,
"predicted_WHIP": 1.3984
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.482,
"form_weight": 0.518,
"form_reliability": 0.6875,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 11.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6875,
"prior_weight": 0.3125
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 5.0,
"final": 5.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 3.0,
"form": 2.302,
"final": 2.6385,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 5.417,
"final": 5.698,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.575,
"final": 1.2978,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 3.758,
"final": 3.8747,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.58,
"final": 0.3004,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.1438,
"final": 4.1438,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3984,
"final": 1.3984,
"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 | Braydon Fisher |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0986 |
| ESPN Rank | 116 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1111 |
| Avg Velo | 87.7265 |
| Avg Spin | 2309.4354 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.5472 |
| Season WHIP | 0.9623 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"opponent": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"edges": {
"quality_edge": -0.0256,
"offense_edge": -0.0586,
"opponent_offense_edge": -0.1144,
"defense_strength": 0.0837,
"opponent_defense_weakness": -0.0317,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0061,
"run_prevention": 0.9746,
"strikeout": 1.0084
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "680755",
"profile": {
"available": true,
"pitcher_id": "680755",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 118.0,
"k_percent": 27.6,
"bb_percent": 9.7,
"woba": 0.259,
"xwoba": 0.296,
"sweet_spot_percent": 30.5,
"barrel_batted_rate": 11.0,
"hard_hit_percent": 39.0,
"avg_best_speed": 77.0903,
"avg_hyper_speed": 93.68,
"whiff_percent": 30.6,
"swing_percent": 45.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3398,
"command_and_miss": 0.5121,
"regression_edge": -1.0571,
"xwoba_edge": 0.5286,
"barrel_edge": -0.8667,
"hard_hit_edge": -0.0571,
"whiff_edge": 0.6857,
"bb_edge": -0.15,
"pitch_design_score": -0.1111
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680755",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 87.72645021700504,
"release_spin_rate": 2309.43540824531,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 87.72645021700504,
"release_spin_rate": 2309.43540824531,
"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.7265,
"release_spin_rate": 2309.4354,
"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.1111,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.7935,
"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.0986,
"sample_weight": 0.472,
"run_prevention_factor": 0.9916,
"strikeout_factor": 1.0256,
"walk_factor": 1.0057,
"homer_factor": 1.0263,
"woba_minus_xwoba": -0.037,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "680755",
"espn_id": 41318,
"player_name": "Braydon Fisher",
"team": "TOR",
"role": "pitcher",
"espn_rank": 116,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 116,
"gp_value": 33.0,
"gp_rank": 3,
"gs_value": 4.0,
"gs_rank": 166,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.5471,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 35.1,
"ip_rank": 165,
"h_value": 21.0,
"h_rank": 280,
"er_value": 10.0,
"er_rank": 285,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 13.0,
"bb_rank": 201,
"k_value": 37.0,
"k_rank": 147,
"k_per_9_value": 9.424528,
"k_per_9_rank": 24,
"whip_value": 0.9622,
"whip_rank": null,
"war_value": 0.83,
"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.0027,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0124,
"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": 10.2,
"ER": 1,
"H": 4,
"BB": 3,
"SO": 14,
"HR": 1,
"ERA": 0.84375,
"WHIP": 0.65625,
"K9": 11.8125,
"HR9": 0.84375,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "680755",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 9,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 9,
"pitch_usage": 0.0,
"release_speed": 87.72645021700504,
"release_spin_rate": 2309.43540824531,
"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": 9,
"pitch_usage": 0.0,
"release_speed": 87.72645021700504,
"release_spin_rate": 2309.43540824531,
"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.7265,
"release_spin_rate": 2309.4354,
"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.1111,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.7935,
"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.977,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5825,
"prior_weight": 0.4175
},
"role": "pitcher",
"player_id": "680755",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 33,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 1.0,
"SO": 5.0,
"HR": 1.0,
"BF": 17.0,
"Pitches": 63.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 0.2,
"SO": 1.0,
"HR": 0.2,
"BF": 3.4,
"Pitches": 12.6
},
"rates": {
"ERA": 1.9286,
"WHIP": 0.6429,
"ER_per_IP": 0.21429,
"H_per_IP": 0.42857,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 3.0,
"SO": 14.0,
"HR": 1.0,
"BF": 39.0,
"Pitches": 147.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.4,
"BB": 0.3,
"SO": 1.4,
"HR": 0.1,
"BF": 3.9,
"Pitches": 14.7
},
"rates": {
"ERA": 0.8438,
"WHIP": 0.6562,
"ER_per_IP": 0.09375,
"H_per_IP": 0.375,
"BB_per_IP": 0.28125,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 33,
"totals": {
"IP": 35.1,
"ER": 10.0,
"R": 13.0,
"H": 21.0,
"BB": 13.0,
"SO": 37.0,
"HR": 3.0,
"BF": 134.0,
"Pitches": 535.0
},
"per_game": {
"IP": 1.0,
"ER": 0.303,
"R": 0.3939,
"H": 0.6364,
"BB": 0.3939,
"SO": 1.1212,
"HR": 0.0909,
"BF": 4.0606,
"Pitches": 16.2121
},
"rates": {
"ERA": 2.5472,
"WHIP": 0.9623,
"ER_per_IP": 0.28302,
"H_per_IP": 0.59434,
"BB_per_IP": 0.36792,
"SO_per_IP": 1.04717,
"HR_per_IP": 0.08491
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.311,
"predicted_H": 0.658,
"predicted_BB": 0.309,
"predicted_SO": 1.061,
"predicted_HR": 0.143,
"predicted_ERA": 2.796,
"predicted_WHIP": 0.9663
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5264,
"form_weight": 0.4736,
"form_reliability": 0.5825,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.977,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5825,
"prior_weight": 0.4175
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.311,
"final": 0.1473,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.658,
"final": 0.3116,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.309,
"final": 0.1463,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.061,
"final": 1.0289,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.143,
"final": 0.0677,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.796,
"final": 2.796,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9663,
"final": 0.9663,
"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.3394 |
| ESPN Rank | 667 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1208 |
| Avg Velo | 91.8681 |
| Avg Spin | 2401.1856 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 6.2561 |
| Season WHIP | 1.6829 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"opponent": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"edges": {
"quality_edge": -0.0256,
"offense_edge": -0.0586,
"opponent_offense_edge": -0.1144,
"defense_strength": 0.0837,
"opponent_defense_weakness": -0.0317,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0061,
"run_prevention": 0.9746,
"strikeout": 1.0084
},
"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.4,
"bb_percent": 7.8,
"woba": 0.37,
"xwoba": 0.289,
"sweet_spot_percent": 31.9,
"barrel_batted_rate": 7.4,
"hard_hit_percent": 30.4,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 92.8248,
"whiff_percent": 42.5,
"swing_percent": 50.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1516,
"command_and_miss": 1.7679,
"regression_edge": 2.0,
"xwoba_edge": 0.7286,
"barrel_edge": -0.0667,
"hard_hit_edge": 1.1714,
"whiff_edge": 2.3857,
"bb_edge": 0.325,
"pitch_design_score": 0.1208
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656546",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 91.86812905818906,
"release_spin_rate": 2401.1855805809523,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 91.86812905818906,
"release_spin_rate": 2401.1855805809523,
"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.8681,
"release_spin_rate": 2401.1856,
"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.1208,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8632,
"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.3394,
"sample_weight": 0.45,
"run_prevention_factor": 0.9712,
"strikeout_factor": 1.0777,
"walk_factor": 0.9883,
"homer_factor": 0.9715,
"woba_minus_xwoba": 0.081,
"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": 667,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 667,
"gp_value": 30.0,
"gp_rank": 19,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.256,
"era_rank": null,
"w_value": 4.0,
"w_rank": 52,
"l_value": 4.0,
"l_rank": 45,
"sv_value": 5.0,
"sv_rank": 24,
"hld_value": 7.0,
"hld_rank": 44,
"ip_value": 27.1,
"ip_rank": 241,
"h_value": 36.0,
"h_rank": 140,
"er_value": 19.0,
"er_rank": 138,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 10.0,
"bb_rank": 270,
"k_value": 47.0,
"k_rank": 103,
"k_per_9_value": 15.475609,
"k_per_9_rank": 11,
"whip_value": 1.6829,
"whip_rank": null,
"war_value": -0.76,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.987,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.987,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9947,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9872,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.035,
"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": 8.2,
"ER": 7,
"H": 10,
"BB": 3,
"SO": 15,
"HR": 1,
"ERA": 7.26923076923077,
"WHIP": 1.5,
"K9": 15.576923076923078,
"HR9": 1.0384615384615385,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "656546",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 19,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 19,
"pitch_usage": 0.0,
"release_speed": 91.86812905818906,
"release_spin_rate": 2401.1855805809523,
"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": 19,
"pitch_usage": 0.0,
"release_speed": 91.86812905818906,
"release_spin_rate": 2401.1855805809523,
"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.8681,
"release_spin_rate": 2401.1856,
"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.1208,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8632,
"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.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"role": "pitcher",
"player_id": "656546",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 6.0,
"R": 6.0,
"H": 7.0,
"BB": 2.0,
"SO": 7.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 90.0
},
"per_game": {
"IP": 1.0,
"ER": 1.2,
"R": 1.2,
"H": 1.4,
"BB": 0.4,
"SO": 1.4,
"HR": 0.2,
"BF": 4.2,
"Pitches": 18.0
},
"rates": {
"ERA": 12.4615,
"WHIP": 2.0769,
"ER_per_IP": 1.38462,
"H_per_IP": 1.61538,
"BB_per_IP": 0.46154,
"SO_per_IP": 1.61538,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 7.0,
"R": 7.0,
"H": 10.0,
"BB": 3.0,
"SO": 15.0,
"HR": 1.0,
"BF": 38.0,
"Pitches": 163.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7,
"R": 0.7,
"H": 1.0,
"BB": 0.3,
"SO": 1.5,
"HR": 0.1,
"BF": 3.8,
"Pitches": 16.3
},
"rates": {
"ERA": 7.2692,
"WHIP": 1.5,
"ER_per_IP": 0.80769,
"H_per_IP": 1.15385,
"BB_per_IP": 0.34615,
"SO_per_IP": 1.73077,
"HR_per_IP": 0.11538
}
},
"season": {
"games": 30,
"totals": {
"IP": 27.1,
"ER": 19.0,
"R": 22.0,
"H": 36.0,
"BB": 10.0,
"SO": 47.0,
"HR": 4.0,
"BF": 129.0,
"Pitches": 517.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6333,
"R": 0.7333,
"H": 1.2,
"BB": 0.3333,
"SO": 1.5667,
"HR": 0.1333,
"BF": 4.3,
"Pitches": 17.2333
},
"rates": {
"ERA": 6.2561,
"WHIP": 1.6829,
"ER_per_IP": 0.69512,
"H_per_IP": 1.31707,
"BB_per_IP": 0.36585,
"SO_per_IP": 1.71951,
"HR_per_IP": 0.14634
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.776,
"predicted_H": 1.184,
"predicted_BB": 0.384,
"predicted_SO": 1.32,
"predicted_HR": 0.157,
"predicted_ERA": 6.9795,
"predicted_WHIP": 1.5681
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5532,
"form_weight": 0.4468,
"form_reliability": 0.5191,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.397,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5191,
"prior_weight": 0.4809
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.776,
"final": 0.3467,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.184,
"final": 1.0822,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.384,
"final": 0.1716,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.32,
"final": 1.6962,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.157,
"final": 0.0702,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.9795,
"final": 6.9795,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5681,
"final": 1.5681,
"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.6014 |
| ESPN Rank | 14 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2121 |
| Avg Velo | 93.4979 |
| Avg Spin | 2238.6034 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 0.2596 |
| Season WHIP | 0.9519 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"opponent": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"edges": {
"quality_edge": -0.0256,
"offense_edge": -0.0586,
"opponent_offense_edge": -0.1144,
"defense_strength": 0.0837,
"opponent_defense_weakness": -0.0317,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0061,
"run_prevention": 0.9746,
"strikeout": 1.0084
},
"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": 34.1,
"bb_percent": 6.8,
"woba": 0.216,
"xwoba": 0.212,
"sweet_spot_percent": 21.8,
"barrel_batted_rate": 1.3,
"hard_hit_percent": 35.9,
"avg_best_speed": 74.175,
"avg_hyper_speed": 93.334,
"whiff_percent": 28.2,
"swing_percent": 51.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.8924,
"command_and_miss": 0.955,
"regression_edge": 0.1143,
"xwoba_edge": 2.5,
"barrel_edge": 1.2889,
"hard_hit_edge": 0.3857,
"whiff_edge": 0.3429,
"bb_edge": 0.575,
"pitch_design_score": 0.2121
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "686973",
"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.49793028207485,
"release_spin_rate": 2238.603422282622,
"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.49793028207485,
"release_spin_rate": 2238.603422282622,
"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.4979,
"release_spin_rate": 2238.6034,
"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.2121,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.5151,
"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.6014,
"sample_weight": 0.45,
"run_prevention_factor": 0.9489,
"strikeout_factor": 1.035,
"walk_factor": 0.9793,
"homer_factor": 0.9129,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686973",
"espn_id": 4917888,
"player_name": "Louis Varland",
"team": "TOR",
"role": "pitcher",
"espn_rank": 14,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 14,
"gp_value": 31.0,
"gp_rank": 7,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 0.2596,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 11.0,
"sv_rank": 11,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 34.2,
"ip_rank": 168,
"h_value": 24.0,
"h_rank": 245,
"er_value": 1.0,
"er_rank": 599,
"hr_value": 0.0,
"hr_rank": 552,
"bb_value": 9.0,
"bb_rank": 298,
"k_value": 45.0,
"k_rank": 114,
"k_per_9_value": 11.682692,
"k_per_9_rank": 18,
"whip_value": 0.9519,
"whip_rank": null,
"war_value": 2.26,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.977,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.977,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9907,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9608,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0157,
"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": 0,
"H": 7,
"BB": 0,
"SO": 13,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.5384615384615384,
"K9": 9.0,
"HR9": 0.0,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "686973",
"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.49793028207485,
"release_spin_rate": 2238.603422282622,
"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.49793028207485,
"release_spin_rate": 2238.603422282622,
"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.4979,
"release_spin_rate": 2238.6034,
"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.2121,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.5151,
"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.845,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5779,
"prior_weight": 0.4221
},
"role": "pitcher",
"player_id": "686973",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.0,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 0.0,
"SO": 4.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 67.0
},
"per_game": {
"IP": 1.1,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.0,
"SO": 0.8,
"HR": 0.0,
"BF": 3.8,
"Pitches": 13.4
},
"rates": {
"ERA": 0.0,
"WHIP": 0.3333,
"ER_per_IP": 0.0,
"H_per_IP": 0.33333,
"BB_per_IP": 0.0,
"SO_per_IP": 0.66667,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.0,
"ER": 0.0,
"R": 1.0,
"H": 7.0,
"BB": 0.0,
"SO": 13.0,
"HR": 0.0,
"BF": 45.0,
"Pitches": 170.0
},
"per_game": {
"IP": 1.1,
"ER": 0.0,
"R": 0.1,
"H": 0.7,
"BB": 0.0,
"SO": 1.3,
"HR": 0.0,
"BF": 4.5,
"Pitches": 17.0
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5385,
"ER_per_IP": 0.0,
"H_per_IP": 0.53846,
"BB_per_IP": 0.0,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 31,
"totals": {
"IP": 34.2,
"ER": 1.0,
"R": 6.0,
"H": 24.0,
"BB": 9.0,
"SO": 45.0,
"HR": 0.0,
"BF": 132.0,
"Pitches": 555.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0323,
"R": 0.1935,
"H": 0.7742,
"BB": 0.2903,
"SO": 1.4516,
"HR": 0.0,
"BF": 4.2581,
"Pitches": 17.9032
},
"rates": {
"ERA": 0.2596,
"WHIP": 0.9519,
"ER_per_IP": 0.02885,
"H_per_IP": 0.69231,
"BB_per_IP": 0.25962,
"SO_per_IP": 1.29808,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.24,
"predicted_H": 0.785,
"predicted_BB": 0.212,
"predicted_SO": 1.062,
"predicted_HR": 0.068,
"predicted_ERA": 1.8718,
"predicted_WHIP": 0.8636
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5283,
"form_weight": 0.4717,
"form_reliability": 0.5779,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.845,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5779,
"prior_weight": 0.4221
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.24,
"final": 0.1132,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.785,
"final": 0.3703,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.212,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.062,
"final": 1.0292,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.068,
"final": 0.0321,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 1.8718,
"final": 1.8718,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.8636,
"final": 0.8636,
"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.3566 |
| ESPN Rank | 71 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 80.7628 |
| Avg Spin | 2077.9070 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.1000 |
| Season WHIP | 1.0333 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 72,
"wins": 35,
"losses": 37,
"win_pct": 0.4861,
"runs_scored": 304.0,
"runs_allowed": 298.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0833,
"avg_runs_scored": 4.2222,
"avg_runs_allowed": 4.1389,
"offense_index": 0.9414,
"defense_index": 1.0837,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 5.5,
"run_differential": -9.0
},
"available": true,
"quality_score": -0.0016
},
"opponent": {
"team": "PHI",
"games": 72,
"wins": 36,
"losses": 36,
"win_pct": 0.5,
"runs_scored": 286.0,
"runs_allowed": 313.0,
"run_differential": -27.0,
"run_differential_per_game": -0.375,
"avg_runs_scored": 3.9722,
"avg_runs_allowed": 4.3472,
"offense_index": 0.8856,
"defense_index": 1.0317,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 4.1,
"run_differential": 1.0
},
"available": true,
"quality_score": 0.024
},
"edges": {
"quality_edge": -0.0256,
"offense_edge": -0.0586,
"opponent_offense_edge": -0.1144,
"defense_strength": 0.0837,
"opponent_defense_weakness": -0.0317,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0061,
"run_prevention": 0.9746,
"strikeout": 1.0084
},
"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": 15.1,
"bb_percent": 8.4,
"woba": 0.216,
"xwoba": 0.24,
"sweet_spot_percent": 22.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 22.0,
"avg_best_speed": 71.5782,
"avg_hyper_speed": 91.8819,
"whiff_percent": 14.9,
"swing_percent": 48.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 2.0471,
"command_and_miss": -1.0114,
"regression_edge": -0.6857,
"xwoba_edge": 2.1286,
"barrel_edge": 1.5778,
"hard_hit_edge": 2.3714,
"whiff_edge": -1.5571,
"bb_edge": 0.175,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "643511",
"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": 80.7627552797253,
"release_spin_rate": 2077.906974178411,
"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": 80.7627552797253,
"release_spin_rate": 2077.906974178411,
"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": 80.7628,
"release_spin_rate": 2077.907,
"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.3566,
"sample_weight": 0.45,
"run_prevention_factor": 0.9697,
"strikeout_factor": 0.9519,
"walk_factor": 0.9937,
"homer_factor": 0.8718,
"woba_minus_xwoba": -0.024,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643511",
"espn_id": 34026,
"player_name": "Tyler Rogers",
"team": "TOR",
"role": "pitcher",
"espn_rank": 71,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 71,
"gp_value": 31.0,
"gp_rank": 7,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.1,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 2.0,
"sv_rank": 51,
"hld_value": 14.0,
"hld_rank": 3,
"ip_value": 30.0,
"ip_rank": 198,
"h_value": 21.0,
"h_rank": 280,
"er_value": 7.0,
"er_rank": 383,
"hr_value": 0.0,
"hr_rank": 552,
"bb_value": 10.0,
"bb_rank": 270,
"k_value": 18.0,
"k_rank": 344,
"k_per_9_value": 5.4,
"k_per_9_rank": 46,
"whip_value": 1.0333,
"whip_rank": null,
"war_value": 1.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9864,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9864,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9972,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9423,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9784,
"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": 4,
"BB": 4,
"SO": 5,
"HR": 0,
"ERA": 2.793103448275862,
"WHIP": 0.8275862068965518,
"K9": 4.655172413793104,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "643511",
"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": 80.7627552797253,
"release_spin_rate": 2077.906974178411,
"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": 80.7627552797253,
"release_spin_rate": 2077.906974178411,
"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": 80.7628,
"release_spin_rate": 2077.907,
"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": 5.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"role": "pitcher",
"player_id": "643511",
"report_date": "20260608_P",
"season_year": 2026,
"rows_used": 31,
"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": 3.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 68.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.2,
"SO": 0.6,
"HR": 0.0,
"BF": 3.4,
"Pitches": 13.6
},
"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": 0.6,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 4.0,
"SO": 5.0,
"HR": 0.0,
"BF": 35.0,
"Pitches": 130.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.4,
"BB": 0.4,
"SO": 0.5,
"HR": 0.0,
"BF": 3.5,
"Pitches": 13.0
},
"rates": {
"ERA": 2.7931,
"WHIP": 0.8276,
"ER_per_IP": 0.31034,
"H_per_IP": 0.41379,
"BB_per_IP": 0.41379,
"SO_per_IP": 0.51724,
"HR_per_IP": 0.0
}
},
"season": {
"games": 31,
"totals": {
"IP": 30.0,
"ER": 7.0,
"R": 8.0,
"H": 21.0,
"BB": 10.0,
"SO": 18.0,
"HR": 0.0,
"BF": 119.0,
"Pitches": 416.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2258,
"R": 0.2581,
"H": 0.6774,
"BB": 0.3226,
"SO": 0.5806,
"HR": 0.0,
"BF": 3.8387,
"Pitches": 13.4194
},
"rates": {
"ERA": 2.1,
"WHIP": 1.0333,
"ER_per_IP": 0.23333,
"H_per_IP": 0.7,
"BB_per_IP": 0.33333,
"SO_per_IP": 0.6,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.306,
"predicted_H": 0.69,
"predicted_BB": 0.33,
"predicted_SO": 0.737,
"predicted_HR": 0.064,
"predicted_ERA": 2.755,
"predicted_WHIP": 1.0206
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5434,
"form_weight": 0.4566,
"form_reliability": 0.5423,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.306,
"final": 0.1397,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.69,
"final": 0.3151,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.33,
"final": 0.1507,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.737,
"final": 0.8799,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.064,
"final": 0.0292,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.755,
"final": 2.755,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0206,
"final": 1.0206,
"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.202 | 0.000 | 0.000 | Hitting_2B | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_3B | 0.023 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 3.761 | 4.000 | 7.000 | Hitting_AB | 3.694 | 0.000 | 0.306 | 4.000 |
| predicted_AVG | 0.233 | 0.000 | 0.286 | Hitting_AVG | 0.271 | - | -0.271 | - |
| predicted_BB | 0.408 | 0.000 | 1.000 | Hitting_BB | 0.405 | 0.000 | -0.405 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.840 | 0.000 | 2.000 | Hitting_H | 1.000 | 0.000 | -1.000 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.108 | 0.000 | -0.108 | 0.000 |
| predicted_OBP | 0.293 | 0.000 | 0.375 | Hitting_OBP | 0.348 | - | -0.348 | - |
| predicted_R | 0.528 | 0.000 | 1.000 | Hitting_R | 0.518 | 0.000 | -0.518 | 0.000 |
| predicted_RBI | 0.320 | 0.000 | 1.000 | Hitting_RBI | 0.338 | 0.000 | -0.338 | 0.000 |
| predicted_SLG | 0.364 | 0.000 | 0.286 | Hitting_SLG | 0.424 | - | -0.424 | - |
| predicted_SO | 0.752 | 0.000 | 1.000 | Hitting_SO | 0.739 | 0.000 | -0.739 | 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.7610 -> 4.0000 (boost 0.2390, 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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.7610 -> 6.6647 (boost 2.9037, 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.3622 -> 0.3534 (deboost -0.0088, 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 | 5 | 3 | predicted_H: 1.4837 -> 2.0000 (boost 0.5163, better) | predicted_2B: 0.3743 -> 0.0000 (deboost -0.3743, worse) | AB rounded to 7 (raw=6.66), rates preserved: AVG=0.223 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7304 -> 1.0000 (boost 0.2696, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2961 -> 0.3750 (boost 0.0789, better) | predicted_SLG: 0.3534 -> 0.2860 (deboost -0.0674, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3534 (boost 0.0674, better) | predicted_OBP: 0.3750 -> 0.2961 (deboost -0.0789, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "662139",
"player_name": "Daulton Varsho",
"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.202,
"predicted_3B": 0.023,
"predicted_AB": 3.761,
"predicted_AVG": 0.233,
"predicted_BB": 0.408,
"predicted_H": 0.84,
"predicted_HR": 0.08,
"predicted_OBP": 0.293,
"predicted_R": 0.528,
"predicted_RBI": 0.32,
"predicted_SLG": 0.364,
"predicted_SO": 0.752
},
"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.3743,
"predicted_3B": 0.0446,
"predicted_AB": 6.6647,
"predicted_AVG": 0.2305,
"predicted_BB": 0.698,
"predicted_H": 1.5069,
"predicted_HBP": 0.07,
"predicted_HR": 0.1377,
"predicted_OBP": 0.2959,
"predicted_R": 0.7493,
"predicted_RBI": 0.5532,
"predicted_SLG": 0.3622,
"predicted_SO": 1.2941
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.3743,
"delta": 0.1723,
"percent_delta": 0.853,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0446,
"delta": 0.0216,
"percent_delta": 0.9391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.761,
"after": 6.6647,
"delta": 2.9037,
"percent_delta": 0.7721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2305,
"delta": -0.0025,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 0.698,
"delta": 0.29,
"percent_delta": 0.7108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 1.5069,
"delta": 0.6669,
"percent_delta": 0.7939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.1377,
"delta": 0.0577,
"percent_delta": 0.7212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2959,
"delta": 0.0029,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.528,
"after": 0.7493,
"delta": 0.2213,
"percent_delta": 0.4191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.5532,
"delta": 0.2332,
"percent_delta": 0.7288,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3622,
"delta": -0.0018,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.752,
"after": 1.2941,
"delta": 0.5421,
"percent_delta": 0.7209,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.761,
"after": 6.6647,
"delta": 2.9037,
"percent_delta": 0.7721,
"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": 7,
"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.3743,
"predicted_3B": 0.0446,
"predicted_AB": 6.6647,
"predicted_AVG": 0.2226,
"predicted_BB": 0.6958,
"predicted_H": 1.4837,
"predicted_HBP": 0.07,
"predicted_HR": 0.1361,
"predicted_OBP": 0.2961,
"predicted_R": 0.7304,
"predicted_RBI": 0.5393,
"predicted_SLG": 0.3534,
"predicted_SO": 1.2981
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3743,
"after": 0.3743,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0446,
"after": 0.0446,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6647,
"after": 6.6647,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2305,
"after": 0.2226,
"delta": -0.0079,
"percent_delta": -0.0343,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.698,
"after": 0.6958,
"delta": -0.0022,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5069,
"after": 1.4837,
"delta": -0.0232,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.07,
"after": 0.07,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1377,
"after": 0.1361,
"delta": -0.0016,
"percent_delta": -0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2959,
"after": 0.2961,
"delta": 0.0002,
"percent_delta": 0.0007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7493,
"after": 0.7304,
"delta": -0.0189,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5532,
"after": 0.5393,
"delta": -0.0139,
"percent_delta": -0.0251,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3622,
"after": 0.3534,
"delta": -0.0088,
"percent_delta": -0.0243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2941,
"after": 1.2981,
"delta": 0.004,
"percent_delta": 0.0031,
"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.3622,
"after": 0.3534,
"delta": -0.0088,
"percent_delta": -0.0243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.66), rates preserved: AVG=0.223 HR/AB=0.020",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3743,
"after": 0.0,
"delta": -0.3743,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0446,
"after": 0.0,
"delta": -0.0446,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6647,
"after": 7.0,
"delta": 0.3353,
"percent_delta": 0.0503,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6958,
"after": 1.0,
"delta": 0.3042,
"percent_delta": 0.4372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4837,
"after": 2.0,
"delta": 0.5163,
"percent_delta": 0.348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1361,
"after": 0.0,
"delta": -0.1361,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5393,
"after": 1.0,
"delta": 0.4607,
"percent_delta": 0.8543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2981,
"after": 1.0,
"delta": -0.2981,
"percent_delta": -0.2296,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.4837,
"after": 2.0,
"delta": 0.5163,
"percent_delta": 0.348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3743,
"after": 0.0,
"delta": -0.3743,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 0.7304,
"after": 1.0,
"delta": 0.2696,
"percent_delta": 0.3691,
"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.7304,
"after": 1.0,
"delta": 0.2696,
"percent_delta": 0.3691,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2226,
"after": 0.286,
"delta": 0.0634,
"percent_delta": 0.2848,
"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": 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_OBP",
"before": 0.2961,
"after": 0.375,
"delta": 0.0789,
"percent_delta": 0.2665,
"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.3534,
"after": 0.286,
"delta": -0.0674,
"percent_delta": -0.1907,
"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.2961,
"after": 0.375,
"delta": 0.0789,
"percent_delta": 0.2665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3534,
"after": 0.286,
"delta": -0.0674,
"percent_delta": -0.1907,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 0,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2226,
"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.2961,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3534,
"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.286,
"after": 0.2226,
"delta": -0.0634,
"percent_delta": -0.2216,
"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.375,
"after": 0.2961,
"delta": -0.0789,
"percent_delta": -0.2104,
"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.286,
"after": 0.3534,
"delta": 0.0674,
"percent_delta": 0.2358,
"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.286,
"after": 0.3534,
"delta": 0.0674,
"percent_delta": 0.2358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.2961,
"delta": -0.0789,
"percent_delta": -0.2104,
"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.202,
"after": 0.0,
"delta": -0.202,
"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": 3.761,
"after": 4.0,
"delta": 0.239,
"percent_delta": 0.0635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2226,
"delta": -0.0104,
"percent_delta": -0.0446,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.84,
"after": 0.0,
"delta": -0.84,
"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.293,
"after": 0.2961,
"delta": 0.0031,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3534,
"delta": -0.0106,
"percent_delta": -0.0291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.752,
"after": 0.0,
"delta": -0.752,
"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.761,
"after": 4.0,
"delta": 0.239,
"percent_delta": 0.0635,
"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.202 | - |
| predicted_3B | 0.023 | - |
| predicted_AB | 3.761 | - |
| predicted_AVG | 0.233 | - |
| predicted_BB | 0.408 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.293 | - |
| predicted_R | 0.528 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.364 | - |
| predicted_SO | 0.752 | - |
Final model 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.374 | 0.172 |
| predicted_3B | 0.045 | 0.022 |
| predicted_AB | 6.665 | 2.904 |
| predicted_AVG | 0.231 | -0.003 |
| predicted_BB | 0.698 | 0.290 |
| predicted_H | 1.507 | 0.667 |
| predicted_HBP | 0.070 | - |
| predicted_HR | 0.138 | 0.058 |
| predicted_OBP | 0.296 | 0.003 |
| predicted_R | 0.749 | 0.221 |
| predicted_RBI | 0.553 | 0.233 |
| predicted_SLG | 0.362 | -0.002 |
| predicted_SO | 1.294 | 0.542 |
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.374 | 0.000 |
| predicted_3B | 0.045 | 0.000 |
| predicted_AB | 6.665 | 0.000 |
| predicted_AVG | 0.223 | -0.008 |
| predicted_BB | 0.696 | -0.002 |
| predicted_H | 1.484 | -0.023 |
| predicted_HBP | 0.070 | 0.000 |
| predicted_HR | 0.136 | -0.002 |
| predicted_OBP | 0.296 | 0.000 |
| predicted_R | 0.730 | -0.019 |
| predicted_RBI | 0.539 | -0.014 |
| predicted_SLG | 0.353 | -0.009 |
| predicted_SO | 1.298 | 0.004 |
AB rounded to 7 (raw=6.66), rates preserved: AVG=0.223 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.374 |
| predicted_3B | 0.000 | -0.045 |
| predicted_AB | 7.000 | 0.335 |
| predicted_AVG | 0.286 | 0.063 |
| predicted_BB | 1.000 | 0.304 |
| predicted_H | 2.000 | 0.516 |
| predicted_HR | 0.000 | -0.136 |
| predicted_OBP | 0.375 | 0.079 |
| predicted_R | 1.000 | 0.270 |
| predicted_RBI | 1.000 | 0.461 |
| predicted_SLG | 0.286 | -0.067 |
| predicted_SO | 1.000 | -0.298 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 2.000 | 1.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 3.000 | 0.1333 | 0.1765 | 0.2000 | 0.1333 | 0.0000 | 0.0667 | 0.0667 | 0.2000 |
| last_10 | 0.20 | 7 | - | 31.000 | 4.000 | 2.000 | 1.000 | 0.000 | 1.000 | 1.000 | 5.000 | 3.000 | 0.1290 | 0.2432 | 0.2581 | 0.1290 | 0.0000 | 0.0323 | 0.1613 | 0.0968 |
| season | 0.60 | 59 | - | 820.000 | 222.000 | 44.000 | 5.000 | 24.000 | 75.000 | 115.000 | 89.000 | 164.000 | 0.2707 | 0.3475 | 0.4244 | 0.2707 | 0.0293 | 0.0915 | 0.1085 | 0.2000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5930 |
| predicted_3B | 0.0720 |
| predicted_AB | 10.3490 |
| predicted_AVG | 0.2273 |
| predicted_BB | 1.0660 |
| predicted_H | 2.3530 |
| predicted_HBP | 0.0700 |
| predicted_HR | 0.2110 |
| predicted_OBP | 0.2996 |
| predicted_R | 1.0300 |
| predicted_RBI | 0.8490 |
| predicted_SLG | 0.3599 |
| predicted_SO | 1.9820 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2020 | 0.5930 | 0.3743 | model_form_blend |
| predicted_3B | 0.0230 | 0.0720 | 0.0446 | model_form_blend |
| predicted_AB | 3.7610 | 10.3490 | 6.6647 | model_form_blend |
| predicted_AVG | 0.2330 | 0.2273 | 0.2305 | model_form_blend |
| predicted_BB | 0.4080 | 1.0660 | 0.6980 | model_form_blend |
| predicted_H | 0.8400 | 2.3530 | 1.5069 | model_form_blend |
| predicted_HBP | - | 0.0700 | 0.0700 | form_only |
| predicted_HR | 0.0800 | 0.2110 | 0.1377 | model_form_blend |
| predicted_OBP | 0.2930 | 0.2996 | 0.2959 | model_form_blend |
| predicted_R | 0.5280 | 1.0300 | 0.7493 | model_form_blend |
| predicted_RBI | 0.3200 | 0.8490 | 0.5532 | model_form_blend |
| predicted_SLG | 0.3640 | 0.3599 | 0.3622 | model_form_blend |
| predicted_SO | 0.7520 | 1.9820 | 1.2941 | 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 | 222 |
| Season rows before report date | 222 |
| Report year | 2026 |
| Profile rows used | 218 |
| 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.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 | 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 | CF |
| gameID | 20260607_BAL@TOR |
| game_type | short |
| mlbID | 662139 |
| playerID | 662139 |
| playerName | Daulton Varsho |
| pos | CF |
| started | False |
| startingPosition | CF |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-07 |
| sl_k_percent | 19.1 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.325 |
| sl_xwoba | 0.304 |
| sl_xba | 0.252 |
| sl_xslg | 0.36 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 6.0 |
| sl_hard_hit_percent | 38.3 |
| sl_exit_velocity_avg | 86.0 |
| sl_launch_angle_avg | 13.7 |
| sl_whiff_percent | 20.5 |
| 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_2B | 0.154 | 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.070 | 3.000 | 6.000 | Hitting_AB | 3.629 | 4.000 | -0.629 | -1.000 |
| predicted_AVG | 0.244 | 0.000 | 0.333 | Hitting_AVG | 0.292 | 0.000 | -0.292 | 0.000 |
| predicted_BB | 0.560 | 1.000 | 1.000 | Hitting_BB | 0.578 | 0.000 | 0.422 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.990 | 0.000 | 2.000 | Hitting_H | 1.059 | 0.000 | -1.059 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.051 | 0.000 | -0.051 | 0.000 |
| predicted_OBP | 0.323 | 0.250 | 0.429 | Hitting_OBP | 0.395 | 0.000 | -0.145 | 0.250 |
| predicted_R | 0.620 | 0.000 | 1.000 | Hitting_R | 0.624 | 0.000 | -0.624 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.422 | 0.000 | -0.422 | 0.000 |
| predicted_SLG | 0.370 | 0.000 | 0.333 | Hitting_SLG | 0.376 | 0.000 | -0.376 | 0.000 |
| predicted_SO | 0.432 | 1.000 | 1.000 | Hitting_SO | 0.426 | 1.000 | 0.574 | 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 | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.4320 -> 1.0000 (boost 0.5680, worse) |
| Biggest Deboost | predicted_AB: 4.0700 -> 3.0000 (deboost -1.0700, 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 | 10 | 9 | 1 | 8 | 2 | predicted_AB: 4.0700 -> 6.4781 (boost 2.4081, better) | predicted_SLG: 0.3700 -> 0.3583 (deboost -0.0117, 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_OBP: 0.3309 -> 0.3365 (boost 0.0056, better) | predicted_SLG: 0.3583 -> 0.3380 (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 | 8 | 3 | 5 | 2 | 6 | predicted_RBI: 0.6218 -> 1.0000 (boost 0.3782, better) | predicted_H: 1.6187 -> 1.0000 (deboost -0.6187, worse) | AB rounded to 6 (raw=6.48), rates preserved: AVG=0.250 HR/AB=0.013 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.300) |
| 6 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3365 -> 0.4290 (boost 0.0925, better) | predicted_SLG: 0.3380 -> 0.3330 (deboost -0.0050, 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_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.4290 -> 0.3365 (deboost -0.0925, worse) | 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.154,
"predicted_3B": 0.0,
"predicted_AB": 4.07,
"predicted_AVG": 0.244,
"predicted_BB": 0.56,
"predicted_H": 0.99,
"predicted_HR": 0.08,
"predicted_OBP": 0.323,
"predicted_R": 0.62,
"predicted_RBI": 0.41,
"predicted_SLG": 0.37,
"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.3236,
"predicted_3B": 0.0004,
"predicted_AB": 6.4781,
"predicted_AVG": 0.2508,
"predicted_BB": 0.8488,
"predicted_H": 1.644,
"predicted_HBP": 0.093,
"predicted_HR": 0.0831,
"predicted_OBP": 0.3309,
"predicted_R": 1.0369,
"predicted_RBI": 0.6379,
"predicted_SLG": 0.3583,
"predicted_SO": 0.7093
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.154,
"after": 0.3236,
"delta": 0.1696,
"percent_delta": 1.1013,
"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.07,
"after": 6.4781,
"delta": 2.4081,
"percent_delta": 0.5917,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.56,
"after": 0.8488,
"delta": 0.2888,
"percent_delta": 0.5157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.644,
"delta": 0.654,
"percent_delta": 0.6606,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0831,
"delta": 0.0031,
"percent_delta": 0.0387,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3309,
"delta": 0.0079,
"percent_delta": 0.0245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.62,
"after": 1.0369,
"delta": 0.4169,
"percent_delta": 0.6724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6379,
"delta": 0.2279,
"percent_delta": 0.5559,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3583,
"delta": -0.0117,
"percent_delta": -0.0316,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.432,
"after": 0.7093,
"delta": 0.2773,
"percent_delta": 0.6419,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 9,
"deboosted_metrics": 1,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.07,
"after": 6.4781,
"delta": 2.4081,
"percent_delta": 0.5917,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3583,
"delta": -0.0117,
"percent_delta": -0.0316,
"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.3236,
"predicted_3B": 0.0004,
"predicted_AB": 6.4781,
"predicted_AVG": 0.2499,
"predicted_BB": 0.8462,
"predicted_H": 1.6187,
"predicted_HBP": 0.093,
"predicted_HR": 0.0821,
"predicted_OBP": 0.3365,
"predicted_R": 1.0108,
"predicted_RBI": 0.6218,
"predicted_SLG": 0.338,
"predicted_SO": 0.7115
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3236,
"after": 0.3236,
"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": 6.4781,
"after": 6.4781,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2508,
"after": 0.2499,
"delta": -0.0009,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8488,
"after": 0.8462,
"delta": -0.0026,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.644,
"after": 1.6187,
"delta": -0.0253,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.093,
"after": 0.093,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0831,
"after": 0.0821,
"delta": -0.001,
"percent_delta": -0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3309,
"after": 0.3365,
"delta": 0.0056,
"percent_delta": 0.0169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0369,
"after": 1.0108,
"delta": -0.0261,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6379,
"after": 0.6218,
"delta": -0.0161,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3583,
"after": 0.338,
"delta": -0.0203,
"percent_delta": -0.0567,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7093,
"after": 0.7115,
"delta": 0.0022,
"percent_delta": 0.0031,
"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.3309,
"after": 0.3365,
"delta": 0.0056,
"percent_delta": 0.0169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3583,
"after": 0.338,
"delta": -0.0203,
"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 6 (raw=6.48), rates preserved: AVG=0.250 HR/AB=0.013",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.3236,
"after": 0.0,
"delta": -0.3236,
"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": 6.4781,
"after": 6.0,
"delta": -0.4781,
"percent_delta": -0.0738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8462,
"after": 1.0,
"delta": 0.1538,
"percent_delta": 0.1818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6187,
"after": 1.0,
"delta": -0.6187,
"percent_delta": -0.3822,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.093,
"after": 0.0,
"delta": -0.093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0821,
"after": 0.0,
"delta": -0.0821,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6218,
"after": 1.0,
"delta": 0.3782,
"percent_delta": 0.6082,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7115,
"after": 1.0,
"delta": 0.2885,
"percent_delta": 0.4055,
"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.6218,
"after": 1.0,
"delta": 0.3782,
"percent_delta": 0.6082,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.6187,
"after": 1.0,
"delta": -0.6187,
"percent_delta": -0.3822,
"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.300)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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": 6.0,
"after": 6.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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"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": 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": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"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": {
"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": 6.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 1.0108,
"after": 1.0,
"delta": -0.0108,
"percent_delta": -0.0107,
"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_SO",
"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": 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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2499,
"after": 0.333,
"delta": 0.0831,
"percent_delta": 0.3325,
"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": 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_OBP",
"before": 0.3365,
"after": 0.429,
"delta": 0.0925,
"percent_delta": 0.2749,
"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.338,
"after": 0.333,
"delta": -0.005,
"percent_delta": -0.0148,
"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.3365,
"after": 0.429,
"delta": 0.0925,
"percent_delta": 0.2749,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.338,
"after": 0.333,
"delta": -0.005,
"percent_delta": -0.0148,
"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": 6.0,
"after": 3.0,
"delta": -3.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": 2.0,
"after": 0.0,
"delta": -2.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_AB",
"before": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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.2499,
"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.3365,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.338,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2499,
"delta": -0.0831,
"percent_delta": -0.2496,
"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.429,
"after": 0.3365,
"delta": -0.0925,
"percent_delta": -0.2155,
"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.338,
"delta": 0.005,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"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_OBP",
"before": 0.429,
"after": 0.3365,
"delta": -0.0925,
"percent_delta": -0.2155,
"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": 4.07,
"after": 3.0,
"delta": -1.07,
"percent_delta": -0.2629,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2499,
"delta": 0.0059,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.56,
"after": 1.0,
"delta": 0.44,
"percent_delta": 0.7857,
"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.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.3365,
"delta": 0.0135,
"percent_delta": 0.0418,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.62,
"after": 0.0,
"delta": -0.62,
"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.37,
"after": 0.338,
"delta": -0.032,
"percent_delta": -0.0865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.432,
"after": 1.0,
"delta": 0.568,
"percent_delta": 1.3148,
"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.432,
"after": 1.0,
"delta": 0.568,
"percent_delta": 1.3148,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.07,
"after": 3.0,
"delta": -1.07,
"percent_delta": -0.2629,
"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.154 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.070 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.560 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.323 | - |
| predicted_R | 0.620 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.370 | - |
| 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.324 | 0.170 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.478 | 2.408 |
| predicted_AVG | 0.251 | 0.007 |
| predicted_BB | 0.849 | 0.289 |
| predicted_H | 1.644 | 0.654 |
| predicted_HBP | 0.093 | - |
| predicted_HR | 0.083 | 0.003 |
| predicted_OBP | 0.331 | 0.008 |
| predicted_R | 1.037 | 0.417 |
| predicted_RBI | 0.638 | 0.228 |
| predicted_SLG | 0.358 | -0.012 |
| predicted_SO | 0.709 | 0.277 |
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.324 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.478 | 0.000 |
| predicted_AVG | 0.250 | -0.001 |
| predicted_BB | 0.846 | -0.003 |
| predicted_H | 1.619 | -0.025 |
| predicted_HBP | 0.093 | 0.000 |
| predicted_HR | 0.082 | -0.001 |
| predicted_OBP | 0.337 | 0.006 |
| predicted_R | 1.011 | -0.026 |
| predicted_RBI | 0.622 | -0.016 |
| predicted_SLG | 0.338 | -0.020 |
| predicted_SO | 0.712 | 0.002 |
AB rounded to 6 (raw=6.48), rates preserved: AVG=0.250 HR/AB=0.013
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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=10.0, weight=0.100, BvP AVG=0.300)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 1.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.324 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.478 |
| predicted_AVG | 0.333 | 0.083 |
| predicted_BB | 1.000 | 0.154 |
| predicted_H | 2.000 | 0.381 |
| predicted_HR | 0.000 | -0.082 |
| predicted_OBP | 0.429 | 0.092 |
| predicted_R | 1.000 | -0.011 |
| predicted_RBI | 1.000 | 0.378 |
| predicted_SLG | 0.333 | -0.005 |
| 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 | -3.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 3.000 | 1.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 2.000 | 0.1667 | 0.2381 | 0.2222 | 0.1667 | 0.0000 | 0.0556 | 0.1111 | 0.1111 |
| last_10 | 0.20 | 10 | - | 39.000 | 10.000 | 4.000 | 0.000 | 0.000 | 3.000 | 6.000 | 3.000 | 3.000 | 0.2564 | 0.3023 | 0.3590 | 0.2564 | 0.0000 | 0.0769 | 0.0769 | 0.0769 |
| season | 0.60 | 63 | - | 860.000 | 251.000 | 36.000 | 0.000 | 12.000 | 100.000 | 145.000 | 131.000 | 101.000 | 0.2919 | 0.3894 | 0.3756 | 0.2919 | 0.0140 | 0.1163 | 0.1523 | 0.1174 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5380 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.5230 |
| predicted_AVG | 0.2595 |
| predicted_BB | 1.2140 |
| predicted_H | 2.4710 |
| predicted_HBP | 0.0930 |
| predicted_HR | 0.0870 |
| predicted_OBP | 0.3409 |
| predicted_R | 1.5640 |
| predicted_RBI | 0.9260 |
| predicted_SLG | 0.3435 |
| predicted_SO | 1.0600 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1540 | 0.5380 | 0.3236 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0700 | 9.5230 | 6.4781 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2595 | 0.2508 | model_form_blend |
| predicted_BB | 0.5600 | 1.2140 | 0.8488 | model_form_blend |
| predicted_H | 0.9900 | 2.4710 | 1.6440 | model_form_blend |
| predicted_HBP | - | 0.0930 | 0.0930 | form_only |
| predicted_HR | 0.0800 | 0.0870 | 0.0831 | model_form_blend |
| predicted_OBP | 0.3230 | 0.3409 | 0.3309 | model_form_blend |
| predicted_R | 0.6200 | 1.5640 | 1.0369 | model_form_blend |
| predicted_RBI | 0.4100 | 0.9260 | 0.6379 | model_form_blend |
| predicted_SLG | 0.3700 | 0.3435 | 0.3583 | model_form_blend |
| predicted_SO | 0.4320 | 1.0600 | 0.7093 | 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 | 234 |
| 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.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.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 | 1B |
| gameID | 20260607_BAL@TOR |
| 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-07 |
| sl_k_percent | 10.0 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.335 |
| sl_xwoba | 0.36 |
| sl_xba | 0.305 |
| sl_xslg | 0.428 |
| sl_sweet_spot_percent | 30.0 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 44.9 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 8.9 |
| sl_whiff_percent | 19.6 |
| 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.243 | 0.000 | 0.000 | Hitting_2B | 0.243 | 0.000 | -0.243 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.460 | 2.000 | 7.000 | Hitting_AB | 4.065 | 4.000 | -2.065 | -2.000 |
| predicted_AVG | 0.215 | 0.000 | 0.143 | Hitting_AVG | 0.213 | 0.000 | -0.213 | 0.000 |
| predicted_BB | 0.408 | 2.000 | 1.000 | Hitting_BB | 0.408 | 0.000 | 1.592 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.036 | 0.000 | -0.036 | 0.000 |
| predicted_H | 0.960 | 0.000 | 1.000 | Hitting_H | 0.864 | 0.000 | -0.864 | 0.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.136 | 0.000 | -0.136 | 0.000 |
| predicted_OBP | 0.301 | 0.500 | 0.250 | Hitting_OBP | 0.291 | 0.000 | 0.209 | 0.500 |
| predicted_R | 0.408 | 0.000 | 1.000 | Hitting_R | 0.408 | 0.000 | -0.408 | 0.000 |
| predicted_RBI | 0.330 | 0.000 | 0.000 | Hitting_RBI | 0.385 | 0.000 | -0.385 | 0.000 |
| predicted_SLG | 0.356 | 0.000 | 0.143 | Hitting_SLG | 0.373 | 0.000 | -0.373 | 0.000 |
| predicted_SO | 0.905 | 1.000 | 1.000 | Hitting_SO | 0.905 | 0.000 | 0.095 | 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_BB: 0.4080 -> 2.0000 (boost 1.5920, better) |
| Biggest Deboost | predicted_AB: 4.4600 -> 2.0000 (deboost -2.4600, 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 | 10 | 8 | 2 | 7 | 3 | predicted_AB: 4.4600 -> 7.3913 (boost 2.9313, better) | predicted_OBP: 0.3010 -> 0.2949 (deboost -0.0061, 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.2949 -> 0.2789 (deboost -0.0160, 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_BB: 0.7778 -> 1.0000 (boost 0.2222, better) | predicted_2B: 0.5151 -> 0.0000 (deboost -0.5151, worse) | AB rounded to 7 (raw=7.39), rates preserved: AVG=0.203 HR/AB=0.023 |
| 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 | 1 | 0 | 1 | 0 | predicted_R: 0.6733 -> 1.0000 (boost 0.3267, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3414 -> 0.1430 (deboost -0.1984, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 1 | 3 | 1 | 3 | predicted_BB: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 2.0000 (deboost -5.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1430 -> 0.3414 (boost 0.1984, better) | - | 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.243,
"predicted_3B": 0.0,
"predicted_AB": 4.46,
"predicted_AVG": 0.215,
"predicted_BB": 0.408,
"predicted_H": 0.96,
"predicted_HR": 0.11,
"predicted_OBP": 0.301,
"predicted_R": 0.408,
"predicted_RBI": 0.33,
"predicted_SLG": 0.356,
"predicted_SO": 0.905
},
"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.5151,
"predicted_3B": 0.0009,
"predicted_AB": 7.3913,
"predicted_AVG": 0.2091,
"predicted_BB": 0.7802,
"predicted_H": 1.524,
"predicted_HBP": 0.075,
"predicted_HR": 0.1706,
"predicted_OBP": 0.2949,
"predicted_R": 0.6907,
"predicted_RBI": 0.4999,
"predicted_SLG": 0.3517,
"predicted_SO": 1.4475
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.243,
"after": 0.5151,
"delta": 0.2721,
"percent_delta": 1.1198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.46,
"after": 7.3913,
"delta": 2.9313,
"percent_delta": 0.6572,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.215,
"after": 0.2091,
"delta": -0.0059,
"percent_delta": -0.0274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 0.7802,
"delta": 0.3722,
"percent_delta": 0.9123,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.524,
"delta": 0.564,
"percent_delta": 0.5875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1706,
"delta": 0.0606,
"percent_delta": 0.5509,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2949,
"delta": -0.0061,
"percent_delta": -0.0203,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.408,
"after": 0.6907,
"delta": 0.2827,
"percent_delta": 0.6929,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.4999,
"delta": 0.1699,
"percent_delta": 0.5148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.905,
"after": 1.4475,
"delta": 0.5425,
"percent_delta": 0.5994,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.46,
"after": 7.3913,
"delta": 2.9313,
"percent_delta": 0.6572,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2949,
"delta": -0.0061,
"percent_delta": -0.0203,
"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": 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.5151,
"predicted_3B": 0.0009,
"predicted_AB": 7.3913,
"predicted_AVG": 0.203,
"predicted_BB": 0.7778,
"predicted_H": 1.5005,
"predicted_HBP": 0.075,
"predicted_HR": 0.1686,
"predicted_OBP": 0.2789,
"predicted_R": 0.6733,
"predicted_RBI": 0.4873,
"predicted_SLG": 0.3414,
"predicted_SO": 1.452
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5151,
"after": 0.5151,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.3913,
"after": 7.3913,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2091,
"after": 0.203,
"delta": -0.0061,
"percent_delta": -0.0292,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7802,
"after": 0.7778,
"delta": -0.0024,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.524,
"after": 1.5005,
"delta": -0.0235,
"percent_delta": -0.0154,
"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.1706,
"after": 0.1686,
"delta": -0.002,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2949,
"after": 0.2789,
"delta": -0.016,
"percent_delta": -0.0543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6907,
"after": 0.6733,
"delta": -0.0174,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4999,
"after": 0.4873,
"delta": -0.0126,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3517,
"after": 0.3414,
"delta": -0.0103,
"percent_delta": -0.0293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4475,
"after": 1.452,
"delta": 0.0045,
"percent_delta": 0.0031,
"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.2949,
"after": 0.2789,
"delta": -0.016,
"percent_delta": -0.0543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.39), rates preserved: AVG=0.203 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.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.5151,
"after": 0.0,
"delta": -0.5151,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.3913,
"after": 7.0,
"delta": -0.3913,
"percent_delta": -0.0529,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7778,
"after": 1.0,
"delta": 0.2222,
"percent_delta": 0.2857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5005,
"after": 1.0,
"delta": -0.5005,
"percent_delta": -0.3336,
"direction": "deboost",
"projection_effect": "worse",
"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.1686,
"after": 0.0,
"delta": -0.1686,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4873,
"after": 0.0,
"delta": -0.4873,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.452,
"after": 1.0,
"delta": -0.452,
"percent_delta": -0.3113,
"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_BB",
"before": 0.7778,
"after": 1.0,
"delta": 0.2222,
"percent_delta": 0.2857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.5151,
"after": 0.0,
"delta": -0.5151,
"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": 7.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": 7.0,
"after": 7.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.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": 7.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": 7.0,
"after": 7.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.6733,
"after": 1.0,
"delta": 0.3267,
"percent_delta": 0.4852,
"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.6733,
"after": 1.0,
"delta": 0.3267,
"percent_delta": 0.4852,
"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": 7.0,
"predicted_AVG": 0.143,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.143,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.203,
"after": 0.143,
"delta": -0.06,
"percent_delta": -0.2956,
"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.2789,
"after": 0.25,
"delta": -0.0289,
"percent_delta": -0.1036,
"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.3414,
"after": 0.143,
"delta": -0.1984,
"percent_delta": -0.5811,
"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.3414,
"after": 0.143,
"delta": -0.1984,
"percent_delta": -0.5811,
"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": 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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 2.0,
"delta": -5.0,
"percent_delta": -0.7143,
"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": 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": 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": 7.0,
"after": 2.0,
"delta": -5.0,
"percent_delta": -0.7143,
"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": 2.0,
"predicted_AVG": 0.203,
"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.2789,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3414,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.143,
"after": 0.203,
"delta": 0.06,
"percent_delta": 0.4197,
"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.2789,
"delta": 0.0289,
"percent_delta": 0.1156,
"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.143,
"after": 0.3414,
"delta": 0.1984,
"percent_delta": 1.3874,
"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.143,
"after": 0.3414,
"delta": 0.1984,
"percent_delta": 1.3874,
"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.243,
"after": 0.0,
"delta": -0.243,
"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.46,
"after": 2.0,
"delta": -2.46,
"percent_delta": -0.5516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.215,
"after": 0.203,
"delta": -0.012,
"percent_delta": -0.0558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 2.0,
"delta": 1.592,
"percent_delta": 3.902,
"direction": "boost",
"projection_effect": "better",
"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.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2789,
"delta": -0.0221,
"percent_delta": -0.0734,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.408,
"after": 0.0,
"delta": -0.408,
"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.356,
"after": 0.3414,
"delta": -0.0146,
"percent_delta": -0.041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.905,
"after": 1.0,
"delta": 0.095,
"percent_delta": 0.105,
"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_BB",
"before": 0.408,
"after": 2.0,
"delta": 1.592,
"percent_delta": 3.902,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.46,
"after": 2.0,
"delta": -2.46,
"percent_delta": -0.5516,
"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.243 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.460 | - |
| predicted_AVG | 0.215 | - |
| predicted_BB | 0.408 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.301 | - |
| predicted_R | 0.408 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.356 | - |
| predicted_SO | 0.905 | - |
Final model 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.515 | 0.272 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 7.391 | 2.931 |
| predicted_AVG | 0.209 | -0.006 |
| predicted_BB | 0.780 | 0.372 |
| predicted_H | 1.524 | 0.564 |
| predicted_HBP | 0.075 | - |
| predicted_HR | 0.171 | 0.061 |
| predicted_OBP | 0.295 | -0.006 |
| predicted_R | 0.691 | 0.283 |
| predicted_RBI | 0.500 | 0.170 |
| predicted_SLG | 0.352 | -0.004 |
| predicted_SO | 1.448 | 0.542 |
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.515 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 7.391 | 0.000 |
| predicted_AVG | 0.203 | -0.006 |
| predicted_BB | 0.778 | -0.002 |
| predicted_H | 1.500 | -0.024 |
| predicted_HBP | 0.075 | 0.000 |
| predicted_HR | 0.169 | -0.002 |
| predicted_OBP | 0.279 | -0.016 |
| predicted_R | 0.673 | -0.017 |
| predicted_RBI | 0.487 | -0.013 |
| predicted_SLG | 0.341 | -0.010 |
| predicted_SO | 1.452 | 0.004 |
AB rounded to 7 (raw=7.39), rates preserved: AVG=0.203 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.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=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 | 7.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 | 7.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.515 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 7.000 | -0.391 |
| predicted_AVG | 0.143 | -0.060 |
| predicted_BB | 1.000 | 0.222 |
| predicted_H | 1.000 | -0.500 |
| predicted_HR | 0.000 | -0.169 |
| predicted_OBP | 0.250 | -0.029 |
| predicted_R | 1.000 | 0.327 |
| predicted_RBI | 0.000 | -0.487 |
| predicted_SLG | 0.143 | -0.198 |
| predicted_SO | 1.000 | -0.452 |
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 | -5.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 | 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 | 3.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.1667 | 0.2857 | 0.2778 | 0.1667 | 0.0000 | 0.0000 | 0.1667 | 0.1111 |
| last_10 | 0.20 | 8 | - | 42.000 | 8.000 | 5.000 | 0.000 | 0.000 | 0.000 | 5.000 | 4.000 | 7.000 | 0.1905 | 0.2609 | 0.3095 | 0.1905 | 0.0000 | 0.0000 | 0.0952 | 0.1667 |
| season | 0.60 | 45 | - | 687.000 | 146.000 | 41.000 | 0.000 | 23.000 | 65.000 | 69.000 | 69.000 | 153.000 | 0.2125 | 0.2910 | 0.3726 | 0.2125 | 0.0335 | 0.0946 | 0.1004 | 0.2227 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8630 |
| predicted_3B | 0.0020 |
| predicted_AB | 11.1380 |
| predicted_AVG | 0.2016 |
| predicted_BB | 1.2560 |
| predicted_H | 2.2450 |
| predicted_HBP | 0.0750 |
| predicted_HR | 0.2480 |
| predicted_OBP | 0.2870 |
| predicted_R | 1.0520 |
| predicted_RBI | 0.7170 |
| predicted_SLG | 0.3462 |
| predicted_SO | 2.1410 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2430 | 0.8630 | 0.5151 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 4.4600 | 11.1380 | 7.3913 | model_form_blend |
| predicted_AVG | 0.2150 | 0.2016 | 0.2091 | model_form_blend |
| predicted_BB | 0.4080 | 1.2560 | 0.7802 | model_form_blend |
| predicted_H | 0.9600 | 2.2450 | 1.5240 | model_form_blend |
| predicted_HBP | - | 0.0750 | 0.0750 | form_only |
| predicted_HR | 0.1100 | 0.2480 | 0.1706 | model_form_blend |
| predicted_OBP | 0.3010 | 0.2870 | 0.2949 | model_form_blend |
| predicted_R | 0.4080 | 1.0520 | 0.6907 | model_form_blend |
| predicted_RBI | 0.3300 | 0.7170 | 0.4999 | model_form_blend |
| predicted_SLG | 0.3560 | 0.3462 | 0.3517 | model_form_blend |
| predicted_SO | 0.9050 | 2.1410 | 1.4475 | 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 | 169 |
| Season rows before report date | 169 |
| Report year | 2026 |
| Profile rows used | 169 |
| 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 | 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 | 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 | 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 | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 543807 |
| playerID | 543807 |
| playerName | George Springer |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.3 |
| sl_bb_percent | 9.1 |
| sl_woba | 0.289 |
| sl_xwoba | 0.301 |
| sl_xba | 0.224 |
| sl_xslg | 0.372 |
| sl_sweet_spot_percent | 30.4 |
| sl_barrel_batted_rate | 8.0 |
| sl_hard_hit_percent | 37.0 |
| sl_exit_velocity_avg | 87.8 |
| sl_launch_angle_avg | 14.4 |
| sl_whiff_percent | 24.3 |
| 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_2B | 0.112 | 0.000 | 0.000 | Hitting_2B | 0.112 | 0.000 | -0.112 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.040 | 3.000 | 7.000 | Hitting_AB | 3.725 | 4.000 | -0.725 | -1.000 |
| predicted_AVG | 0.245 | 0.333 | 0.286 | Hitting_AVG | 0.225 | 0.250 | 0.109 | 0.083 |
| predicted_BB | 0.440 | 1.000 | 1.000 | Hitting_BB | 0.438 | 0.000 | 0.562 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.990 | 1.000 | 2.000 | Hitting_H | 0.837 | 1.000 | 0.163 | 0.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.215 | 0.000 | -0.215 | 0.000 |
| predicted_OBP | 0.331 | 0.500 | 0.375 | Hitting_OBP | 0.313 | 0.250 | 0.187 | 0.250 |
| predicted_R | 0.513 | 1.000 | 1.000 | Hitting_R | 0.511 | 1.000 | 0.489 | 0.000 |
| predicted_RBI | 0.560 | 1.000 | 1.000 | Hitting_RBI | 0.584 | 1.000 | 0.416 | 0.000 |
| predicted_SLG | 0.421 | 0.333 | 0.286 | Hitting_SLG | 0.427 | 0.250 | -0.094 | 0.083 |
| predicted_SO | 1.328 | 1.000 | 2.000 | Hitting_SO | 1.322 | 1.000 | -0.322 | 0.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_BB: 0.4400 -> 1.0000 (boost 0.5600, better) |
| Biggest Deboost | predicted_AB: 4.0400 -> 3.0000 (deboost -1.0400, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.0400 -> 6.5249 (boost 2.4849, 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.3355 -> 0.3241 (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 | 7 | 3 | 4 | 4 | 3 | predicted_AB: 6.5249 -> 7.0000 (boost 0.4751, better) | predicted_HR: 0.2837 -> 0.0000 (deboost -0.2837, worse) | AB rounded to 7 (raw=6.52), rates preserved: AVG=0.261 HR/AB=0.043 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8735 -> 1.0000 (boost 0.1265, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3241 -> 0.3750 (boost 0.0509, better) | predicted_SLG: 0.4165 -> 0.2860 (deboost -0.1305, 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: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4165 (boost 0.1305, better) | predicted_OBP: 0.3750 -> 0.3241 (deboost -0.0509, 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.112,
"predicted_3B": 0.0,
"predicted_AB": 4.04,
"predicted_AVG": 0.245,
"predicted_BB": 0.44,
"predicted_H": 0.99,
"predicted_HR": 0.17,
"predicted_OBP": 0.331,
"predicted_R": 0.513,
"predicted_RBI": 0.56,
"predicted_SLG": 0.421,
"predicted_SO": 1.328
},
"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.1654,
"predicted_3B": 0.0004,
"predicted_AB": 6.5249,
"predicted_AVG": 0.2583,
"predicted_BB": 0.6148,
"predicted_H": 1.7271,
"predicted_HBP": 0.131,
"predicted_HR": 0.287,
"predicted_OBP": 0.3355,
"predicted_R": 0.8961,
"predicted_RBI": 0.9767,
"predicted_SLG": 0.427,
"predicted_SO": 2.2187
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.112,
"after": 0.1654,
"delta": 0.0534,
"percent_delta": 0.4768,
"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.04,
"after": 6.5249,
"delta": 2.4849,
"percent_delta": 0.6151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2583,
"delta": 0.0133,
"percent_delta": 0.0543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.44,
"after": 0.6148,
"delta": 0.1748,
"percent_delta": 0.3973,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.7271,
"delta": 0.7371,
"percent_delta": 0.7445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.287,
"delta": 0.117,
"percent_delta": 0.6882,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.331,
"after": 0.3355,
"delta": 0.0045,
"percent_delta": 0.0136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.513,
"after": 0.8961,
"delta": 0.3831,
"percent_delta": 0.7468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.9767,
"delta": 0.4167,
"percent_delta": 0.7441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.427,
"delta": 0.006,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.328,
"after": 2.2187,
"delta": 0.8907,
"percent_delta": 0.6707,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.04,
"after": 6.5249,
"delta": 2.4849,
"percent_delta": 0.6151,
"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": 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.1654,
"predicted_3B": 0.0004,
"predicted_AB": 6.5249,
"predicted_AVG": 0.2606,
"predicted_BB": 0.6129,
"predicted_H": 1.7005,
"predicted_HBP": 0.131,
"predicted_HR": 0.2837,
"predicted_OBP": 0.3241,
"predicted_R": 0.8735,
"predicted_RBI": 0.9521,
"predicted_SLG": 0.4165,
"predicted_SO": 2.2256
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1654,
"after": 0.1654,
"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": 6.5249,
"after": 6.5249,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2583,
"after": 0.2606,
"delta": 0.0023,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6148,
"after": 0.6129,
"delta": -0.0019,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7271,
"after": 1.7005,
"delta": -0.0266,
"percent_delta": -0.0154,
"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.287,
"after": 0.2837,
"delta": -0.0033,
"percent_delta": -0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3355,
"after": 0.3241,
"delta": -0.0114,
"percent_delta": -0.034,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8961,
"after": 0.8735,
"delta": -0.0226,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9767,
"after": 0.9521,
"delta": -0.0246,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.427,
"after": 0.4165,
"delta": -0.0105,
"percent_delta": -0.0246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.2187,
"after": 2.2256,
"delta": 0.0069,
"percent_delta": 0.0031,
"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.3355,
"after": 0.3241,
"delta": -0.0114,
"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 7 (raw=6.52), rates preserved: AVG=0.261 HR/AB=0.043",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1654,
"after": 0.0,
"delta": -0.1654,
"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": 6.5249,
"after": 7.0,
"delta": 0.4751,
"percent_delta": 0.0728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6129,
"after": 1.0,
"delta": 0.3871,
"percent_delta": 0.6316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7005,
"after": 2.0,
"delta": 0.2995,
"percent_delta": 0.1761,
"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.2837,
"after": 0.0,
"delta": -0.2837,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9521,
"after": 1.0,
"delta": 0.0479,
"percent_delta": 0.0503,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.2256,
"after": 2.0,
"delta": -0.2256,
"percent_delta": -0.1014,
"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": 6.5249,
"after": 7.0,
"delta": 0.4751,
"percent_delta": 0.0728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2837,
"after": 0.0,
"delta": -0.2837,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.8735,
"after": 1.0,
"delta": 0.1265,
"percent_delta": 0.1448,
"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": 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_R",
"before": 0.8735,
"after": 1.0,
"delta": 0.1265,
"percent_delta": 0.1448,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2606,
"after": 0.286,
"delta": 0.0254,
"percent_delta": 0.0975,
"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": 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_OBP",
"before": 0.3241,
"after": 0.375,
"delta": 0.0509,
"percent_delta": 0.1571,
"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.4165,
"after": 0.286,
"delta": -0.1305,
"percent_delta": -0.3133,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3241,
"after": 0.375,
"delta": 0.0509,
"percent_delta": 0.1571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4165,
"after": 0.286,
"delta": -0.1305,
"percent_delta": -0.3133,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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.2606,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3241,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4165,
"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.286,
"after": 0.2606,
"delta": -0.0254,
"percent_delta": -0.0888,
"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.375,
"after": 0.3241,
"delta": -0.0509,
"percent_delta": -0.1357,
"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.286,
"after": 0.4165,
"delta": 0.1305,
"percent_delta": 0.4564,
"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.286,
"after": 0.4165,
"delta": 0.1305,
"percent_delta": 0.4564,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3241,
"delta": -0.0509,
"percent_delta": -0.1357,
"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.112,
"after": 0.0,
"delta": -0.112,
"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.04,
"after": 3.0,
"delta": -1.04,
"percent_delta": -0.2574,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2606,
"delta": 0.0156,
"percent_delta": 0.0637,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.44,
"after": 1.0,
"delta": 0.56,
"percent_delta": 1.2727,
"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.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.331,
"after": 0.3241,
"delta": -0.0069,
"percent_delta": -0.0208,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.513,
"after": 1.0,
"delta": 0.487,
"percent_delta": 0.9493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 1.0,
"delta": 0.44,
"percent_delta": 0.7857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.4165,
"delta": -0.0045,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.328,
"after": 1.0,
"delta": -0.328,
"percent_delta": -0.247,
"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_BB",
"before": 0.44,
"after": 1.0,
"delta": 0.56,
"percent_delta": 1.2727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.04,
"after": 3.0,
"delta": -1.04,
"percent_delta": -0.2574,
"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.112 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.040 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.440 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.331 | - |
| predicted_R | 0.513 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.421 | - |
| predicted_SO | 1.328 | - |
Final model 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.165 | 0.053 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.525 | 2.485 |
| predicted_AVG | 0.258 | 0.013 |
| predicted_BB | 0.615 | 0.175 |
| predicted_H | 1.727 | 0.737 |
| predicted_HBP | 0.131 | - |
| predicted_HR | 0.287 | 0.117 |
| predicted_OBP | 0.336 | 0.005 |
| predicted_R | 0.896 | 0.383 |
| predicted_RBI | 0.977 | 0.417 |
| predicted_SLG | 0.427 | 0.006 |
| predicted_SO | 2.219 | 0.891 |
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.165 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.525 | 0.000 |
| predicted_AVG | 0.261 | 0.002 |
| predicted_BB | 0.613 | -0.002 |
| predicted_H | 1.700 | -0.027 |
| predicted_HBP | 0.131 | 0.000 |
| predicted_HR | 0.284 | -0.003 |
| predicted_OBP | 0.324 | -0.011 |
| predicted_R | 0.874 | -0.023 |
| predicted_RBI | 0.952 | -0.025 |
| predicted_SLG | 0.416 | -0.011 |
| predicted_SO | 2.226 | 0.007 |
AB rounded to 7 (raw=6.52), rates preserved: AVG=0.261 HR/AB=0.043
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.165 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.475 |
| predicted_AVG | 0.286 | 0.025 |
| predicted_BB | 1.000 | 0.387 |
| predicted_H | 2.000 | 0.300 |
| predicted_HR | 0.000 | -0.284 |
| predicted_OBP | 0.375 | 0.051 |
| predicted_R | 1.000 | 0.126 |
| predicted_RBI | 1.000 | 0.048 |
| predicted_SLG | 0.286 | -0.131 |
| predicted_SO | 2.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 | -4.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | -1.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 | -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 | 0.000 | 2.000 | 3.000 | 0.000 | 7.000 | 0.3810 | 0.3810 | 0.3810 | 0.3810 | 0.0000 | 0.0952 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 10 | - | 37.000 | 12.000 | 1.000 | 0.000 | 2.000 | 8.000 | 6.000 | 3.000 | 13.000 | 0.3243 | 0.3902 | 0.5135 | 0.3243 | 0.0541 | 0.2162 | 0.0811 | 0.3513 |
| season | 0.60 | 63 | - | 868.000 | 195.000 | 26.000 | 0.000 | 50.000 | 136.000 | 119.000 | 102.000 | 308.000 | 0.2247 | 0.3131 | 0.4274 | 0.2246 | 0.0576 | 0.1567 | 0.1175 | 0.3548 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2330 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.6700 |
| predicted_AVG | 0.2751 |
| predicted_BB | 0.8360 |
| predicted_H | 2.6600 |
| predicted_HBP | 0.1310 |
| predicted_HR | 0.4350 |
| predicted_OBP | 0.3413 |
| predicted_R | 1.3810 |
| predicted_RBI | 1.5040 |
| predicted_SLG | 0.4345 |
| predicted_SO | 3.3460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1120 | 0.2330 | 0.1654 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0400 | 9.6700 | 6.5249 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2751 | 0.2583 | model_form_blend |
| predicted_BB | 0.4400 | 0.8360 | 0.6148 | model_form_blend |
| predicted_H | 0.9900 | 2.6600 | 1.7271 | model_form_blend |
| predicted_HBP | - | 0.1310 | 0.1310 | form_only |
| predicted_HR | 0.1700 | 0.4350 | 0.2870 | model_form_blend |
| predicted_OBP | 0.3310 | 0.3413 | 0.3355 | model_form_blend |
| predicted_R | 0.5130 | 1.3810 | 0.8961 | model_form_blend |
| predicted_RBI | 0.5600 | 1.5040 | 0.9767 | model_form_blend |
| predicted_SLG | 0.4210 | 0.4345 | 0.4270 | model_form_blend |
| predicted_SO | 1.3280 | 3.3460 | 2.2187 | 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 | 232 |
| 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.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 | 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 | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 672960 |
| playerID | 672960 |
| playerName | Kazuma Okamoto |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-07 |
| sl_k_percent | 31.9 |
| sl_bb_percent | 9.5 |
| sl_woba | 0.331 |
| sl_xwoba | 0.33 |
| sl_xba | 0.227 |
| sl_xslg | 0.444 |
| sl_sweet_spot_percent | 33.1 |
| sl_barrel_batted_rate | 14.6 |
| sl_hard_hit_percent | 51.0 |
| sl_exit_velocity_avg | 92.4 |
| sl_launch_angle_avg | 16.8 |
| sl_whiff_percent | 33.7 |
| 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.106 | 0.000 | 0.000 | Hitting_2B | 0.103 | 0.000 | -0.103 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.124 | 4.000 | 5.000 | Hitting_AB | 3.043 | 3.000 | 0.957 | 1.000 |
| predicted_AVG | 0.275 | 0.000 | 0.200 | Hitting_AVG | 0.272 | 0.333 | -0.272 | -0.333 |
| predicted_BB | 0.478 | 0.000 | 1.000 | Hitting_BB | 0.466 | 1.000 | -0.466 | -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.828 | 1.000 | -0.828 | -1.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.172 | 1.000 | -0.172 | -1.000 |
| predicted_OBP | 0.343 | 0.000 | 0.333 | Hitting_OBP | 0.368 | 0.500 | -0.368 | -0.500 |
| predicted_R | 0.496 | 0.000 | 1.000 | Hitting_R | 0.483 | 1.000 | -0.483 | -1.000 |
| predicted_RBI | 0.480 | 0.000 | 1.000 | Hitting_RBI | 0.431 | 2.000 | -0.431 | -2.000 |
| predicted_SLG | 0.526 | 0.000 | 0.200 | Hitting_SLG | 0.476 | 1.333 | -0.476 | -1.333 |
| predicted_SO | 0.823 | 1.000 | 1.000 | Hitting_SO | 0.802 | 1.000 | 0.198 | 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 | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.1240 -> 4.0000 (boost 0.8760, better) |
| Biggest Deboost | predicted_H: 0.7400 -> 0.0000 (deboost -0.7400, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.1240 -> 4.6504 (boost 1.5264, 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 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3601 -> 0.3660 (boost 0.0059, better) | predicted_SLG: 0.5691 -> 0.5494 (deboost -0.0197, 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: 4.6504 -> 5.0000 (boost 0.3496, better) | predicted_HR: 0.3561 -> 0.0000 (deboost -0.3561, worse) | AB rounded to 5 (raw=4.65), rates preserved: AVG=0.267 HR/AB=0.077 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7677 -> 1.0000 (boost 0.2323, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5494 -> 0.2000 (deboost -0.3494, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | 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.5494 (boost 0.3494, better) | - | 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.106,
"predicted_3B": 0.0,
"predicted_AB": 3.124,
"predicted_AVG": 0.275,
"predicted_BB": 0.478,
"predicted_H": 0.74,
"predicted_HR": 0.18,
"predicted_OBP": 0.343,
"predicted_R": 0.496,
"predicted_RBI": 0.48,
"predicted_SLG": 0.526,
"predicted_SO": 0.823
},
"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.2427,
"predicted_3B": 0.0009,
"predicted_AB": 4.6504,
"predicted_AVG": 0.2826,
"predicted_BB": 0.7278,
"predicted_H": 1.2615,
"predicted_HBP": 0.004,
"predicted_HR": 0.3602,
"predicted_OBP": 0.3601,
"predicted_R": 0.7875,
"predicted_RBI": 0.8511,
"predicted_SLG": 0.5691,
"predicted_SO": 1.1867
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.106,
"after": 0.2427,
"delta": 0.1367,
"percent_delta": 1.2896,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.124,
"after": 4.6504,
"delta": 1.5264,
"percent_delta": 0.4886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.275,
"after": 0.2826,
"delta": 0.0076,
"percent_delta": 0.0276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.478,
"after": 0.7278,
"delta": 0.2498,
"percent_delta": 0.5226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 1.2615,
"delta": 0.5215,
"percent_delta": 0.7047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.3602,
"delta": 0.1802,
"percent_delta": 1.0011,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3601,
"delta": 0.0171,
"percent_delta": 0.0499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.496,
"after": 0.7875,
"delta": 0.2915,
"percent_delta": 0.5877,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.8511,
"delta": 0.3711,
"percent_delta": 0.7731,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.526,
"after": 0.5691,
"delta": 0.0431,
"percent_delta": 0.0819,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.823,
"after": 1.1867,
"delta": 0.3637,
"percent_delta": 0.4419,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.124,
"after": 4.6504,
"delta": 1.5264,
"percent_delta": 0.4886,
"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": 8,
"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.2427,
"predicted_3B": 0.0009,
"predicted_AB": 4.6504,
"predicted_AVG": 0.2671,
"predicted_BB": 0.7255,
"predicted_H": 1.2421,
"predicted_HBP": 0.004,
"predicted_HR": 0.3561,
"predicted_OBP": 0.366,
"predicted_R": 0.7677,
"predicted_RBI": 0.8297,
"predicted_SLG": 0.5494,
"predicted_SO": 1.1904
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2427,
"after": 0.2427,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6504,
"after": 4.6504,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2826,
"after": 0.2671,
"delta": -0.0155,
"percent_delta": -0.0548,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7278,
"after": 0.7255,
"delta": -0.0023,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2615,
"after": 1.2421,
"delta": -0.0194,
"percent_delta": -0.0154,
"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.3602,
"after": 0.3561,
"delta": -0.0041,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3601,
"after": 0.366,
"delta": 0.0059,
"percent_delta": 0.0164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7875,
"after": 0.7677,
"delta": -0.0198,
"percent_delta": -0.0251,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8511,
"after": 0.8297,
"delta": -0.0214,
"percent_delta": -0.0251,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5691,
"after": 0.5494,
"delta": -0.0197,
"percent_delta": -0.0346,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1867,
"after": 1.1904,
"delta": 0.0037,
"percent_delta": 0.0031,
"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.3601,
"after": 0.366,
"delta": 0.0059,
"percent_delta": 0.0164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5691,
"after": 0.5494,
"delta": -0.0197,
"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 5 (raw=4.65), rates preserved: AVG=0.267 HR/AB=0.077",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.2427,
"after": 0.0,
"delta": -0.2427,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6504,
"after": 5.0,
"delta": 0.3496,
"percent_delta": 0.0752,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7255,
"after": 1.0,
"delta": 0.2745,
"percent_delta": 0.3784,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2421,
"after": 1.0,
"delta": -0.2421,
"percent_delta": -0.1949,
"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.3561,
"after": 0.0,
"delta": -0.3561,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8297,
"after": 1.0,
"delta": 0.1703,
"percent_delta": 0.2053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1904,
"after": 1.0,
"delta": -0.1904,
"percent_delta": -0.1599,
"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": 4.6504,
"after": 5.0,
"delta": 0.3496,
"percent_delta": 0.0752,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3561,
"after": 0.0,
"delta": -0.3561,
"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": 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": 5.0,
"after": 5.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.7677,
"after": 1.0,
"delta": 0.2323,
"percent_delta": 0.3026,
"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.7677,
"after": 1.0,
"delta": 0.2323,
"percent_delta": 0.3026,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.2671,
"after": 0.2,
"delta": -0.0671,
"percent_delta": -0.2512,
"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.366,
"after": 0.333,
"delta": -0.033,
"percent_delta": -0.0902,
"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.5494,
"after": 0.2,
"delta": -0.3494,
"percent_delta": -0.636,
"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.5494,
"after": 0.2,
"delta": -0.3494,
"percent_delta": -0.636,
"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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_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.2671,
"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.366,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5494,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2671,
"delta": 0.0671,
"percent_delta": 0.3354,
"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.333,
"after": 0.366,
"delta": 0.033,
"percent_delta": 0.0991,
"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.5494,
"delta": 0.3494,
"percent_delta": 1.7468,
"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.5494,
"delta": 0.3494,
"percent_delta": 1.7468,
"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": 3.124,
"after": 4.0,
"delta": 0.876,
"percent_delta": 0.2804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.275,
"after": 0.2671,
"delta": -0.0079,
"percent_delta": -0.0287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.478,
"after": 0.0,
"delta": -0.478,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.366,
"delta": 0.023,
"percent_delta": 0.0671,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.496,
"after": 0.0,
"delta": -0.496,
"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.526,
"after": 0.5494,
"delta": 0.0234,
"percent_delta": 0.0445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.823,
"after": 1.0,
"delta": 0.177,
"percent_delta": 0.2151,
"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_AB",
"before": 3.124,
"after": 4.0,
"delta": 0.876,
"percent_delta": 0.2804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.74,
"after": 0.0,
"delta": -0.74,
"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.106 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.124 | - |
| predicted_AVG | 0.275 | - |
| predicted_BB | 0.478 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.343 | - |
| predicted_R | 0.496 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.526 | - |
| predicted_SO | 0.823 | - |
Final model 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.137 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.650 | 1.526 |
| predicted_AVG | 0.283 | 0.008 |
| predicted_BB | 0.728 | 0.250 |
| predicted_H | 1.262 | 0.522 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.360 | 0.180 |
| predicted_OBP | 0.360 | 0.017 |
| predicted_R | 0.787 | 0.291 |
| predicted_RBI | 0.851 | 0.371 |
| predicted_SLG | 0.569 | 0.043 |
| predicted_SO | 1.187 | 0.364 |
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.001 | 0.000 |
| predicted_AB | 4.650 | 0.000 |
| predicted_AVG | 0.267 | -0.016 |
| predicted_BB | 0.726 | -0.002 |
| predicted_H | 1.242 | -0.019 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.356 | -0.004 |
| predicted_OBP | 0.366 | 0.006 |
| predicted_R | 0.768 | -0.020 |
| predicted_RBI | 0.830 | -0.021 |
| predicted_SLG | 0.549 | -0.020 |
| predicted_SO | 1.190 | 0.004 |
AB rounded to 5 (raw=4.65), rates preserved: AVG=0.267 HR/AB=0.077
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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 | 5.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.243 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.350 |
| predicted_AVG | 0.200 | -0.067 |
| predicted_BB | 1.000 | 0.274 |
| predicted_H | 1.000 | -0.242 |
| predicted_HR | 0.000 | -0.356 |
| predicted_OBP | 0.333 | -0.033 |
| predicted_R | 1.000 | 0.232 |
| predicted_RBI | 1.000 | 0.170 |
| predicted_SLG | 0.200 | -0.349 |
| predicted_SO | 1.000 | -0.190 |
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 | -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 | 2.000 | 0.000 | 3.000 | 6.000 | 4.000 | 2.000 | 4.000 | 0.4000 | 0.4444 | 1.1333 | 0.4000 | 0.2000 | 0.4000 | 0.1333 | 0.2667 |
| last_10 | 0.20 | 8 | - | 29.000 | 7.000 | 3.000 | 0.000 | 3.000 | 6.000 | 4.000 | 8.000 | 5.000 | 0.2414 | 0.3947 | 0.6552 | 0.2414 | 0.1035 | 0.2069 | 0.2759 | 0.1724 |
| season | 0.60 | 40 | - | 353.000 | 96.000 | 12.000 | 0.000 | 20.000 | 50.000 | 56.000 | 54.000 | 93.000 | 0.2720 | 0.3676 | 0.4759 | 0.2720 | 0.0567 | 0.1416 | 0.1530 | 0.2635 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4240 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.6740 |
| predicted_AVG | 0.2927 |
| predicted_BB | 1.0590 |
| predicted_H | 1.9530 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.5990 |
| predicted_OBP | 0.3827 |
| predicted_R | 1.1740 |
| predicted_RBI | 1.3430 |
| predicted_SLG | 0.6262 |
| predicted_SO | 1.6690 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1060 | 0.4240 | 0.2427 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.1240 | 6.6740 | 4.6504 | model_form_blend |
| predicted_AVG | 0.2750 | 0.2927 | 0.2826 | model_form_blend |
| predicted_BB | 0.4780 | 1.0590 | 0.7278 | model_form_blend |
| predicted_H | 0.7400 | 1.9530 | 1.2615 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.1800 | 0.5990 | 0.3602 | model_form_blend |
| predicted_OBP | 0.3430 | 0.3827 | 0.3601 | model_form_blend |
| predicted_R | 0.4960 | 1.1740 | 0.7875 | model_form_blend |
| predicted_RBI | 0.4800 | 1.3430 | 0.8511 | model_form_blend |
| predicted_SLG | 0.5260 | 0.6262 | 0.5691 | model_form_blend |
| predicted_SO | 0.8230 | 1.6690 | 1.1867 | 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 | 116 |
| Season rows before report date | 116 |
| Report year | 2026 |
| Profile rows used | 113 |
| 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.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 | 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 | 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 | C |
| gameID | 20260607_BAL@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-07 |
| sl_k_percent | 22.2 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.36 |
| sl_xwoba | 0.355 |
| sl_xba | 0.263 |
| sl_xslg | 0.461 |
| sl_sweet_spot_percent | 41.6 |
| sl_barrel_batted_rate | 10.1 |
| sl_hard_hit_percent | 40.4 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 16.7 |
| sl_whiff_percent | 25.4 |
| 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.090 | 0.000 | 0.000 | Hitting_2B | 0.083 | 0.000 | -0.083 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.570 | 3.000 | 3.000 | Hitting_AB | 2.358 | 2.000 | 0.642 | 1.000 |
| predicted_AVG | 0.272 | 0.000 | 0.333 | Hitting_AVG | 0.245 | 0.000 | -0.245 | 0.000 |
| predicted_BB | 0.300 | 1.000 | 0.000 | Hitting_BB | 0.294 | 0.000 | 0.706 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.009 | 0.000 | -0.009 | 0.000 |
| predicted_H | 0.210 | 0.000 | 1.000 | Hitting_H | 0.578 | 0.000 | -0.578 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_OBP | 0.272 | 0.250 | 0.333 | Hitting_OBP | 0.324 | 0.000 | -0.074 | 0.250 |
| predicted_R | 0.490 | 0.000 | 1.000 | Hitting_R | 0.468 | 0.000 | -0.468 | 0.000 |
| predicted_RBI | 0.140 | 0.000 | 0.000 | Hitting_RBI | 0.183 | 0.000 | -0.183 | 0.000 |
| predicted_SLG | 0.320 | 0.000 | 0.333 | Hitting_SLG | 0.362 | 0.000 | -0.362 | 0.000 |
| predicted_SO | 0.420 | 0.000 | 1.000 | Hitting_SO | 0.385 | 0.000 | -0.385 | 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.3000 -> 1.0000 (boost 0.7000, better) |
| Biggest Deboost | predicted_R: 0.4900 -> 0.0000 (deboost -0.4900, 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 | 4 | 3 | 3 | 4 | predicted_AB: 2.5700 -> 3.2382 (boost 0.6682, better) | predicted_AVG: 0.2720 -> 0.2471 (deboost -0.0249, 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.2471 -> 0.1506 (deboost -0.0965, 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.5769 -> 1.0000 (boost 0.4231, worse) | predicted_H: 0.4877 -> 0.0000 (deboost -0.4877, worse) | AB rounded to 3 (raw=3.24), rates preserved: AVG=0.151 HR/AB=0.015 |
| 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 | 2 | 2 | 0 | 2 | 0 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1506 -> 0.3330 (boost 0.1824, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 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 |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1506 (deboost -0.1824, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664702",
"player_name": "Myles Straw",
"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.09,
"predicted_3B": 0.0,
"predicted_AB": 2.57,
"predicted_AVG": 0.272,
"predicted_BB": 0.3,
"predicted_H": 0.21,
"predicted_HR": 0.03,
"predicted_OBP": 0.272,
"predicted_R": 0.49,
"predicted_RBI": 0.14,
"predicted_SLG": 0.32,
"predicted_SO": 0.42
},
"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.0934,
"predicted_3B": 0.0008,
"predicted_AB": 3.2382,
"predicted_AVG": 0.2471,
"predicted_BB": 0.2975,
"predicted_H": 0.4953,
"predicted_HBP": 0.004,
"predicted_HR": 0.049,
"predicted_OBP": 0.2668,
"predicted_R": 0.5272,
"predicted_RBI": 0.3002,
"predicted_SLG": 0.308,
"predicted_SO": 0.5751
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.09,
"after": 0.0934,
"delta": 0.0034,
"percent_delta": 0.0378,
"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.57,
"after": 3.2382,
"delta": 0.6682,
"percent_delta": 0.26,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2471,
"delta": -0.0249,
"percent_delta": -0.0915,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.2975,
"delta": -0.0025,
"percent_delta": -0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.21,
"after": 0.4953,
"delta": 0.2853,
"percent_delta": 1.3586,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.049,
"delta": 0.019,
"percent_delta": 0.6333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.272,
"after": 0.2668,
"delta": -0.0052,
"percent_delta": -0.0191,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.49,
"after": 0.5272,
"delta": 0.0372,
"percent_delta": 0.0759,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.14,
"after": 0.3002,
"delta": 0.1602,
"percent_delta": 1.1443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.32,
"after": 0.308,
"delta": -0.012,
"percent_delta": -0.0375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.42,
"after": 0.5751,
"delta": 0.1551,
"percent_delta": 0.3693,
"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_AB",
"before": 2.57,
"after": 3.2382,
"delta": 0.6682,
"percent_delta": 0.26,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2471,
"delta": -0.0249,
"percent_delta": -0.0915,
"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": 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.0934,
"predicted_3B": 0.0008,
"predicted_AB": 3.2382,
"predicted_AVG": 0.1506,
"predicted_BB": 0.2966,
"predicted_H": 0.4877,
"predicted_HBP": 0.004,
"predicted_HR": 0.0484,
"predicted_OBP": 0.2219,
"predicted_R": 0.5139,
"predicted_RBI": 0.2926,
"predicted_SLG": 0.2248,
"predicted_SO": 0.5769
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0934,
"after": 0.0934,
"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.2382,
"after": 3.2382,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2471,
"after": 0.1506,
"delta": -0.0965,
"percent_delta": -0.3905,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2975,
"after": 0.2966,
"delta": -0.0009,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4953,
"after": 0.4877,
"delta": -0.0076,
"percent_delta": -0.0153,
"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.049,
"after": 0.0484,
"delta": -0.0006,
"percent_delta": -0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2668,
"after": 0.2219,
"delta": -0.0449,
"percent_delta": -0.1683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5272,
"after": 0.5139,
"delta": -0.0133,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3002,
"after": 0.2926,
"delta": -0.0076,
"percent_delta": -0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.308,
"after": 0.2248,
"delta": -0.0832,
"percent_delta": -0.2701,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5751,
"after": 0.5769,
"delta": 0.0018,
"percent_delta": 0.0031,
"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.2471,
"after": 0.1506,
"delta": -0.0965,
"percent_delta": -0.3905,
"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.151 HR/AB=0.015",
"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.0934,
"after": 0.0,
"delta": -0.0934,
"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.2382,
"after": 3.0,
"delta": -0.2382,
"percent_delta": -0.0736,
"direction": "deboost",
"projection_effect": "worse",
"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.4877,
"after": 0.0,
"delta": -0.4877,
"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.0484,
"after": 0.0,
"delta": -0.0484,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2926,
"after": 0.0,
"delta": -0.2926,
"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": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 0,
"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_H",
"before": 0.4877,
"after": 0.0,
"delta": -0.4877,
"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": 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.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": 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": 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.5139,
"after": 1.0,
"delta": 0.4861,
"percent_delta": 0.9459,
"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": 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": 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": 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.1506,
"after": 0.333,
"delta": 0.1824,
"percent_delta": 1.2112,
"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.2219,
"after": 0.333,
"delta": 0.1111,
"percent_delta": 0.5007,
"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.2248,
"after": 0.333,
"delta": 0.1082,
"percent_delta": 0.4813,
"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.1506,
"after": 0.333,
"delta": 0.1824,
"percent_delta": 1.2112,
"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": 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_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.1506,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2219,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2248,
"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.1506,
"delta": -0.1824,
"percent_delta": -0.5477,
"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.2219,
"delta": -0.1111,
"percent_delta": -0.3337,
"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.2248,
"delta": -0.1082,
"percent_delta": -0.3249,
"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.1506,
"delta": -0.1824,
"percent_delta": -0.5477,
"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.09,
"after": 0.0,
"delta": -0.09,
"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.57,
"after": 3.0,
"delta": 0.43,
"percent_delta": 0.1673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.1506,
"delta": -0.1214,
"percent_delta": -0.4463,
"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.21,
"after": 0.0,
"delta": -0.21,
"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.272,
"after": 0.2219,
"delta": -0.0501,
"percent_delta": -0.1842,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.49,
"after": 0.0,
"delta": -0.49,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.32,
"after": 0.2248,
"delta": -0.0952,
"percent_delta": -0.2975,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"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.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.49,
"after": 0.0,
"delta": -0.49,
"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.090 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.570 | - |
| predicted_AVG | 0.272 | - |
| predicted_BB | 0.300 | - |
| predicted_H | 0.210 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.272 | - |
| predicted_R | 0.490 | - |
| predicted_RBI | 0.140 | - |
| predicted_SLG | 0.320 | - |
| predicted_SO | 0.420 | - |
Final model 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.093 | 0.003 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.238 | 0.668 |
| predicted_AVG | 0.247 | -0.025 |
| predicted_BB | 0.297 | -0.003 |
| predicted_H | 0.495 | 0.285 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.049 | 0.019 |
| predicted_OBP | 0.267 | -0.005 |
| predicted_R | 0.527 | 0.037 |
| predicted_RBI | 0.300 | 0.160 |
| predicted_SLG | 0.308 | -0.012 |
| predicted_SO | 0.575 | 0.155 |
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.093 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.238 | 0.000 |
| predicted_AVG | 0.151 | -0.096 |
| predicted_BB | 0.297 | -0.001 |
| predicted_H | 0.488 | -0.008 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.048 | -0.001 |
| predicted_OBP | 0.222 | -0.045 |
| predicted_R | 0.514 | -0.013 |
| predicted_RBI | 0.293 | -0.008 |
| predicted_SLG | 0.225 | -0.083 |
| predicted_SO | 0.577 | 0.002 |
AB rounded to 3 (raw=3.24), rates preserved: AVG=0.151 HR/AB=0.015
| 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.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 | 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 | 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.093 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.238 |
| predicted_AVG | 0.333 | 0.182 |
| predicted_BB | 0.000 | -0.297 |
| predicted_H | 1.000 | 0.512 |
| predicted_HR | 0.000 | -0.048 |
| predicted_OBP | 0.333 | 0.111 |
| predicted_R | 1.000 | 0.486 |
| predicted_RBI | 0.000 | -0.293 |
| predicted_SLG | 0.333 | 0.108 |
| 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 | 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 | -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 | 2.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 0.000 | 3.000 | 0.1538 | 0.1538 | 0.1538 | 0.1538 | 0.0000 | 0.2308 | 0.0000 | 0.2308 |
| last_10 | 0.20 | 10 | - | 19.000 | 3.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 0.000 | 4.000 | 0.1579 | 0.1579 | 0.1579 | 0.1579 | 0.0000 | 0.1579 | 0.0000 | 0.2105 |
| season | 0.60 | 47 | - | 257.000 | 63.000 | 9.000 | 0.000 | 7.000 | 20.000 | 49.000 | 30.000 | 42.000 | 0.2451 | 0.3196 | 0.3619 | 0.2451 | 0.0272 | 0.0778 | 0.1167 | 0.1634 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0980 |
| predicted_3B | 0.0020 |
| predicted_AB | 4.1510 |
| predicted_AVG | 0.2132 |
| predicted_BB | 0.2940 |
| predicted_H | 0.8850 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.0750 |
| predicted_OBP | 0.2596 |
| predicted_R | 0.5780 |
| predicted_RBI | 0.5190 |
| predicted_SLG | 0.2915 |
| predicted_SO | 0.7870 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0900 | 0.0980 | 0.0934 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.5700 | 4.1510 | 3.2382 | model_form_blend |
| predicted_AVG | 0.2720 | 0.2132 | 0.2471 | model_form_blend |
| predicted_BB | 0.3000 | 0.2940 | 0.2975 | model_form_blend |
| predicted_H | 0.2100 | 0.8850 | 0.4953 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0300 | 0.0750 | 0.0490 | model_form_blend |
| predicted_OBP | 0.2720 | 0.2596 | 0.2668 | model_form_blend |
| predicted_R | 0.4900 | 0.5780 | 0.5272 | model_form_blend |
| predicted_RBI | 0.1400 | 0.5190 | 0.3002 | model_form_blend |
| predicted_SLG | 0.3200 | 0.2915 | 0.3080 | model_form_blend |
| predicted_SO | 0.4200 | 0.7870 | 0.5751 | 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 | 109 |
| Season rows before report date | 109 |
| Report year | 2026 |
| Profile rows used | 100 |
| 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.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 | 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 | 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 | CF |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 664702 |
| playerID | 664702 |
| playerName | Myles Straw |
| pos | RF |
| started | True |
| startingPosition | CF |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-07 |
| sl_k_percent | 16.1 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.283 |
| sl_xwoba | 0.308 |
| sl_xba | 0.263 |
| sl_xslg | 0.365 |
| sl_sweet_spot_percent | 29.8 |
| sl_barrel_batted_rate | 4.8 |
| sl_hard_hit_percent | 27.4 |
| sl_exit_velocity_avg | 86.6 |
| sl_launch_angle_avg | 16.0 |
| sl_whiff_percent | 14.3 |
| sl_swing_percent | 38.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.172 | 0.000 | 0.000 | Hitting_2B | 0.170 | 0.000 | -0.170 | 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 | 5.000 | Hitting_AB | 3.409 | 4.000 | 0.591 | 0.000 |
| predicted_AVG | 0.270 | 0.250 | 0.200 | Hitting_AVG | 0.307 | 0.500 | -0.057 | -0.250 |
| predicted_BB | 0.149 | 0.000 | 0.000 | Hitting_BB | 0.159 | 0.000 | -0.159 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.760 | 1.000 | 1.000 | Hitting_H | 1.045 | 2.000 | -0.045 | -1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.114 | 1.000 | -0.114 | -1.000 |
| predicted_OBP | 0.314 | 0.250 | 0.200 | Hitting_OBP | 0.338 | 0.500 | -0.088 | -0.250 |
| predicted_R | 0.287 | 0.000 | 0.000 | Hitting_R | 0.284 | 1.000 | -0.284 | -1.000 |
| predicted_RBI | 0.390 | 0.000 | 1.000 | Hitting_RBI | 0.557 | 1.000 | -0.557 | -1.000 |
| predicted_SLG | 0.436 | 0.250 | 0.200 | Hitting_SLG | 0.457 | 1.250 | -0.207 | -1.000 |
| predicted_SO | 0.690 | 0.000 | 1.000 | Hitting_SO | 0.682 | 0.000 | -0.682 | 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_AB: 3.4480 -> 4.0000 (boost 0.5520, better) |
| Biggest Deboost | predicted_SO: 0.6900 -> 0.0000 (deboost -0.6900, 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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.4480 -> 4.9355 (boost 1.4875, 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.3174 -> 0.2896 (deboost -0.0278, 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.5990 -> 1.0000 (boost 0.4010, better) | predicted_H: 1.3008 -> 1.0000 (deboost -0.3008, worse) | AB rounded to 5 (raw=4.94), rates preserved: AVG=0.264 HR/AB=0.038 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4308 -> 0.0000 (deboost -0.4308, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4185 -> 0.2000 (deboost -0.2185, 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: 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.4185 (boost 0.2185, better) | - | 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.172,
"predicted_3B": 0.0,
"predicted_AB": 3.448,
"predicted_AVG": 0.27,
"predicted_BB": 0.149,
"predicted_H": 0.76,
"predicted_HR": 0.12,
"predicted_OBP": 0.314,
"predicted_R": 0.287,
"predicted_RBI": 0.39,
"predicted_SLG": 0.436,
"predicted_SO": 0.69
},
"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.0008,
"predicted_AB": 4.9355,
"predicted_AVG": 0.2825,
"predicted_BB": 0.1817,
"predicted_H": 1.3211,
"predicted_HBP": 0.006,
"predicted_HR": 0.19,
"predicted_OBP": 0.3174,
"predicted_R": 0.4419,
"predicted_RBI": 0.6145,
"predicted_SLG": 0.445,
"predicted_SO": 1.1382
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.172,
"after": 0.1996,
"delta": 0.0276,
"percent_delta": 0.1605,
"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.448,
"after": 4.9355,
"delta": 1.4875,
"percent_delta": 0.4314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.2825,
"delta": 0.0125,
"percent_delta": 0.0463,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.149,
"after": 0.1817,
"delta": 0.0327,
"percent_delta": 0.2195,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.76,
"after": 1.3211,
"delta": 0.5611,
"percent_delta": 0.7383,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.19,
"delta": 0.07,
"percent_delta": 0.5833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3174,
"delta": 0.0034,
"percent_delta": 0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.287,
"after": 0.4419,
"delta": 0.1549,
"percent_delta": 0.5397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.6145,
"delta": 0.2245,
"percent_delta": 0.5756,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.436,
"after": 0.445,
"delta": 0.009,
"percent_delta": 0.0206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.69,
"after": 1.1382,
"delta": 0.4482,
"percent_delta": 0.6496,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.448,
"after": 4.9355,
"delta": 1.4875,
"percent_delta": 0.4314,
"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": 8,
"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.1996,
"predicted_3B": 0.0008,
"predicted_AB": 4.9355,
"predicted_AVG": 0.2636,
"predicted_BB": 0.1811,
"predicted_H": 1.3008,
"predicted_HBP": 0.006,
"predicted_HR": 0.1878,
"predicted_OBP": 0.2896,
"predicted_R": 0.4308,
"predicted_RBI": 0.599,
"predicted_SLG": 0.4185,
"predicted_SO": 1.1417
},
"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.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9355,
"after": 4.9355,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2825,
"after": 0.2636,
"delta": -0.0189,
"percent_delta": -0.0669,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1817,
"after": 0.1811,
"delta": -0.0006,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3211,
"after": 1.3008,
"delta": -0.0203,
"percent_delta": -0.0154,
"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.19,
"after": 0.1878,
"delta": -0.0022,
"percent_delta": -0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3174,
"after": 0.2896,
"delta": -0.0278,
"percent_delta": -0.0876,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4419,
"after": 0.4308,
"delta": -0.0111,
"percent_delta": -0.0251,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6145,
"after": 0.599,
"delta": -0.0155,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.445,
"after": 0.4185,
"delta": -0.0265,
"percent_delta": -0.0596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1382,
"after": 1.1417,
"delta": 0.0035,
"percent_delta": 0.0031,
"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.3174,
"after": 0.2896,
"delta": -0.0278,
"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 5 (raw=4.94), rates preserved: AVG=0.264 HR/AB=0.038",
"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.1996,
"after": 0.0,
"delta": -0.1996,
"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.9355,
"after": 5.0,
"delta": 0.0645,
"percent_delta": 0.0131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1811,
"after": 0.0,
"delta": -0.1811,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3008,
"after": 1.0,
"delta": -0.3008,
"percent_delta": -0.2312,
"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.1878,
"after": 0.0,
"delta": -0.1878,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.599,
"after": 1.0,
"delta": 0.401,
"percent_delta": 0.6694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1417,
"after": 1.0,
"delta": -0.1417,
"percent_delta": -0.1241,
"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.599,
"after": 1.0,
"delta": 0.401,
"percent_delta": 0.6694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3008,
"after": 1.0,
"delta": -0.3008,
"percent_delta": -0.2312,
"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": 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": 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.4308,
"after": 0.0,
"delta": -0.4308,
"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.4308,
"after": 0.0,
"delta": -0.4308,
"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": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 0.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.2636,
"after": 0.2,
"delta": -0.0636,
"percent_delta": -0.2413,
"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.2896,
"after": 0.2,
"delta": -0.0896,
"percent_delta": -0.3094,
"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.4185,
"after": 0.2,
"delta": -0.2185,
"percent_delta": -0.5221,
"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.4185,
"after": 0.2,
"delta": -0.2185,
"percent_delta": -0.5221,
"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": 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": 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_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.2636,
"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.2896,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4185,
"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.2636,
"delta": 0.0636,
"percent_delta": 0.3178,
"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.2896,
"delta": 0.0896,
"percent_delta": 0.4481,
"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.4185,
"delta": 0.2185,
"percent_delta": 1.0924,
"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.4185,
"delta": 0.2185,
"percent_delta": 1.0924,
"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.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.27,
"after": 0.2636,
"delta": -0.0064,
"percent_delta": -0.0237,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.149,
"after": 0.0,
"delta": -0.149,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.76,
"after": 1.0,
"delta": 0.24,
"percent_delta": 0.3158,
"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.314,
"after": 0.2896,
"delta": -0.0244,
"percent_delta": -0.0777,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.39,
"after": 0.0,
"delta": -0.39,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.436,
"after": 0.4185,
"delta": -0.0175,
"percent_delta": -0.0401,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"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": 3.448,
"after": 4.0,
"delta": 0.552,
"percent_delta": 0.1601,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"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.172 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.448 | - |
| predicted_AVG | 0.270 | - |
| predicted_BB | 0.149 | - |
| predicted_H | 0.760 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.287 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.436 | - |
| predicted_SO | 0.690 | - |
Final model 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.028 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.936 | 1.488 |
| predicted_AVG | 0.282 | 0.012 |
| predicted_BB | 0.182 | 0.033 |
| predicted_H | 1.321 | 0.561 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.190 | 0.070 |
| predicted_OBP | 0.317 | 0.003 |
| predicted_R | 0.442 | 0.155 |
| predicted_RBI | 0.615 | 0.225 |
| predicted_SLG | 0.445 | 0.009 |
| predicted_SO | 1.138 | 0.448 |
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.001 | 0.000 |
| predicted_AB | 4.936 | 0.000 |
| predicted_AVG | 0.264 | -0.019 |
| predicted_BB | 0.181 | -0.001 |
| predicted_H | 1.301 | -0.020 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.188 | -0.002 |
| predicted_OBP | 0.290 | -0.028 |
| predicted_R | 0.431 | -0.011 |
| predicted_RBI | 0.599 | -0.016 |
| predicted_SLG | 0.418 | -0.027 |
| predicted_SO | 1.142 | 0.003 |
AB rounded to 5 (raw=4.94), rates preserved: AVG=0.264 HR/AB=0.038
| 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 | 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.200 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.064 |
| predicted_AVG | 0.200 | -0.064 |
| predicted_BB | 0.000 | -0.181 |
| predicted_H | 1.000 | -0.301 |
| predicted_HR | 0.000 | -0.188 |
| predicted_OBP | 0.200 | -0.090 |
| predicted_R | 0.000 | -0.431 |
| predicted_RBI | 1.000 | 0.401 |
| predicted_SLG | 0.200 | -0.218 |
| predicted_SO | 1.000 | -0.142 |
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 | -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 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 0.000 | 5.000 | 0.3333 | 0.3333 | 0.5000 | 0.3333 | 0.0556 | 0.0556 | 0.0000 | 0.2778 |
| last_10 | 0.20 | 8 | - | 33.000 | 8.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 0.000 | 16.000 | 0.2424 | 0.2424 | 0.4242 | 0.2424 | 0.0606 | 0.1212 | 0.0000 | 0.4849 |
| season | 0.60 | 33 | - | 300.000 | 92.000 | 15.000 | 0.000 | 10.000 | 48.000 | 25.000 | 13.000 | 60.000 | 0.3067 | 0.3355 | 0.4567 | 0.3067 | 0.0333 | 0.1600 | 0.0433 | 0.2000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2370 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.9530 |
| predicted_AVG | 0.2994 |
| predicted_BB | 0.2260 |
| predicted_H | 2.0820 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.2850 |
| predicted_OBP | 0.3220 |
| predicted_R | 0.6520 |
| predicted_RBI | 0.9190 |
| predicted_SLG | 0.4572 |
| predicted_SO | 1.7460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1720 | 0.2370 | 0.1996 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.4480 | 6.9530 | 4.9355 | model_form_blend |
| predicted_AVG | 0.2700 | 0.2994 | 0.2825 | model_form_blend |
| predicted_BB | 0.1490 | 0.2260 | 0.1817 | model_form_blend |
| predicted_H | 0.7600 | 2.0820 | 1.3211 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.1200 | 0.2850 | 0.1900 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3220 | 0.3174 | model_form_blend |
| predicted_R | 0.2870 | 0.6520 | 0.4419 | model_form_blend |
| predicted_RBI | 0.3900 | 0.9190 | 0.6145 | model_form_blend |
| predicted_SLG | 0.4360 | 0.4572 | 0.4450 | model_form_blend |
| predicted_SO | 0.6900 | 1.7460 | 1.1382 | 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 | 88 |
| Season rows before report date | 88 |
| Report year | 2026 |
| Profile rows used | 87 |
| 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.307 |
| 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 | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 5 |
| 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 | RF-LF |
| gameID | 20260607_BAL@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-07 |
| sl_k_percent | 22.2 |
| sl_bb_percent | 4.6 |
| sl_woba | 0.347 |
| sl_xwoba | 0.326 |
| sl_xba | 0.285 |
| sl_xslg | 0.434 |
| sl_sweet_spot_percent | 36.7 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 43.0 |
| sl_exit_velocity_avg | 91.4 |
| sl_launch_angle_avg | 10.1 |
| sl_whiff_percent | 25.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.330 | 0.000 | 0.000 | Hitting_2B | 0.330 | 0.000 | -0.330 | 0.000 |
| predicted_3B | 0.004 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.070 | 4.000 | 7.000 | Hitting_AB | 4.009 | 4.000 | -0.009 | 0.000 |
| predicted_AVG | 0.260 | 0.000 | 0.286 | Hitting_AVG | 0.305 | 0.250 | -0.305 | -0.250 |
| predicted_BB | 0.135 | 0.000 | 0.000 | Hitting_BB | 0.135 | 0.000 | -0.135 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.060 | 0.000 | 2.000 | Hitting_H | 1.222 | 1.000 | -1.222 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_OBP | 0.325 | 0.000 | 0.286 | Hitting_OBP | 0.326 | 0.250 | -0.326 | -0.250 |
| predicted_R | 0.439 | 0.000 | 1.000 | Hitting_R | 0.439 | 1.000 | -0.439 | -1.000 |
| predicted_RBI | 0.440 | 0.000 | 1.000 | Hitting_RBI | 0.404 | 0.000 | -0.404 | 0.000 |
| predicted_SLG | 0.437 | 0.000 | 0.286 | Hitting_SLG | 0.464 | 0.250 | -0.464 | -0.250 |
| predicted_SO | 0.343 | 0.000 | 1.000 | Hitting_SO | 0.343 | 1.000 | -0.343 | -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_AVG: 0.2600 -> 0.2954 (boost 0.0354, better) |
| Biggest Deboost | predicted_H: 1.0600 -> 0.0000 (deboost -1.0600, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.0700 -> 6.6765 (boost 2.6065, 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.2867 -> 0.2954 (boost 0.0087, better) | predicted_OBP: 0.3293 -> 0.3131 (deboost -0.0162, 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: 6.6765 -> 7.0000 (boost 0.3235, better) | predicted_2B: 0.4438 -> 0.0000 (deboost -0.4438, worse) | AB rounded to 7 (raw=6.68), rates preserved: AVG=0.295 HR/AB=0.027 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.222) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8897 -> 1.0000 (boost 0.1103, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4644 -> 0.2860 (deboost -0.1784, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 0 | 5 | 1 | 4 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2860 -> 0.4644 (boost 0.1784, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676391",
"player_name": "Ernie Clement",
"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.33,
"predicted_3B": 0.004,
"predicted_AB": 4.07,
"predicted_AVG": 0.26,
"predicted_BB": 0.135,
"predicted_H": 1.06,
"predicted_HR": 0.1,
"predicted_OBP": 0.325,
"predicted_R": 0.439,
"predicted_RBI": 0.44,
"predicted_SLG": 0.437,
"predicted_SO": 0.343
},
"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.4438,
"predicted_3B": 0.0671,
"predicted_AB": 6.6765,
"predicted_AVG": 0.2867,
"predicted_BB": 0.1721,
"predicted_H": 2.0031,
"predicted_HBP": 0.003,
"predicted_HR": 0.1856,
"predicted_OBP": 0.3293,
"predicted_R": 0.9127,
"predicted_RBI": 0.7479,
"predicted_SLG": 0.4636,
"predicted_SO": 0.7281
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.33,
"after": 0.4438,
"delta": 0.1138,
"percent_delta": 0.3448,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0671,
"delta": 0.0631,
"percent_delta": 15.775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.07,
"after": 6.6765,
"delta": 2.6065,
"percent_delta": 0.6404,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2867,
"delta": 0.0267,
"percent_delta": 0.1027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.135,
"after": 0.1721,
"delta": 0.0371,
"percent_delta": 0.2748,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.06,
"after": 2.0031,
"delta": 0.9431,
"percent_delta": 0.8897,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1856,
"delta": 0.0856,
"percent_delta": 0.856,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3293,
"delta": 0.0043,
"percent_delta": 0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 0.9127,
"delta": 0.4737,
"percent_delta": 1.079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.7479,
"delta": 0.3079,
"percent_delta": 0.6998,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.437,
"after": 0.4636,
"delta": 0.0266,
"percent_delta": 0.0609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.343,
"after": 0.7281,
"delta": 0.3851,
"percent_delta": 1.1227,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.07,
"after": 6.6765,
"delta": 2.6065,
"percent_delta": 0.6404,
"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.4438,
"predicted_3B": 0.0671,
"predicted_AB": 6.6765,
"predicted_AVG": 0.2954,
"predicted_BB": 0.1716,
"predicted_H": 1.9723,
"predicted_HBP": 0.003,
"predicted_HR": 0.1835,
"predicted_OBP": 0.3131,
"predicted_R": 0.8897,
"predicted_RBI": 0.7291,
"predicted_SLG": 0.4644,
"predicted_SO": 0.7304
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4438,
"after": 0.4438,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0671,
"after": 0.0671,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6765,
"after": 6.6765,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2867,
"after": 0.2954,
"delta": 0.0087,
"percent_delta": 0.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1721,
"after": 0.1716,
"delta": -0.0005,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0031,
"after": 1.9723,
"delta": -0.0308,
"percent_delta": -0.0154,
"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.1856,
"after": 0.1835,
"delta": -0.0021,
"percent_delta": -0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3293,
"after": 0.3131,
"delta": -0.0162,
"percent_delta": -0.0492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9127,
"after": 0.8897,
"delta": -0.023,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7479,
"after": 0.7291,
"delta": -0.0188,
"percent_delta": -0.0251,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4636,
"after": 0.4644,
"delta": 0.0008,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.7281,
"after": 0.7304,
"delta": 0.0023,
"percent_delta": 0.0032,
"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.2867,
"after": 0.2954,
"delta": 0.0087,
"percent_delta": 0.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3293,
"after": 0.3131,
"delta": -0.0162,
"percent_delta": -0.0492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.68), rates preserved: AVG=0.295 HR/AB=0.027",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.4438,
"after": 0.0,
"delta": -0.4438,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0671,
"after": 0.0,
"delta": -0.0671,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.6765,
"after": 7.0,
"delta": 0.3235,
"percent_delta": 0.0485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1716,
"after": 0.0,
"delta": -0.1716,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9723,
"after": 2.0,
"delta": 0.0277,
"percent_delta": 0.014,
"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.1835,
"after": 0.0,
"delta": -0.1835,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7291,
"after": 1.0,
"delta": 0.2709,
"percent_delta": 0.3716,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7304,
"after": 1.0,
"delta": 0.2696,
"percent_delta": 0.3691,
"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": 6.6765,
"after": 7.0,
"delta": 0.3235,
"percent_delta": 0.0485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4438,
"after": 0.0,
"delta": -0.4438,
"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.222)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.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": 7.0,
"after": 7.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": 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_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.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": 7.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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 0.8897,
"after": 1.0,
"delta": 0.1103,
"percent_delta": 0.124,
"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.8897,
"after": 1.0,
"delta": 0.1103,
"percent_delta": 0.124,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2954,
"after": 0.286,
"delta": -0.0094,
"percent_delta": -0.0318,
"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": 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_OBP",
"before": 0.3131,
"after": 0.286,
"delta": -0.0271,
"percent_delta": -0.0866,
"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.4644,
"after": 0.286,
"delta": -0.1784,
"percent_delta": -0.3842,
"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.4644,
"after": 0.286,
"delta": -0.1784,
"percent_delta": -0.3842,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 0.0,
"delta": -2.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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2954,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3131,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4644,
"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.286,
"after": 0.2954,
"delta": 0.0094,
"percent_delta": 0.0329,
"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.286,
"after": 0.3131,
"delta": 0.0271,
"percent_delta": 0.0946,
"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.286,
"after": 0.4644,
"delta": 0.1784,
"percent_delta": 0.6238,
"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.286,
"after": 0.4644,
"delta": 0.1784,
"percent_delta": 0.6238,
"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.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"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.26,
"after": 0.2954,
"delta": 0.0354,
"percent_delta": 0.1362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.135,
"after": 0.0,
"delta": -0.135,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.06,
"after": 0.0,
"delta": -1.06,
"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.325,
"after": 0.3131,
"delta": -0.0119,
"percent_delta": -0.0366,
"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.44,
"after": 0.0,
"delta": -0.44,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.437,
"after": 0.4644,
"delta": 0.0274,
"percent_delta": 0.0627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.343,
"after": 0.0,
"delta": -0.343,
"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_AVG",
"before": 0.26,
"after": 0.2954,
"delta": 0.0354,
"percent_delta": 0.1362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.06,
"after": 0.0,
"delta": -1.06,
"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.330 | - |
| predicted_3B | 0.004 | - |
| predicted_AB | 4.070 | - |
| predicted_AVG | 0.260 | - |
| predicted_BB | 0.135 | - |
| predicted_H | 1.060 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.439 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.437 | - |
| predicted_SO | 0.343 | - |
Final model 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.444 | 0.114 |
| predicted_3B | 0.067 | 0.063 |
| predicted_AB | 6.676 | 2.606 |
| predicted_AVG | 0.287 | 0.027 |
| predicted_BB | 0.172 | 0.037 |
| predicted_H | 2.003 | 0.943 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.186 | 0.086 |
| predicted_OBP | 0.329 | 0.004 |
| predicted_R | 0.913 | 0.474 |
| predicted_RBI | 0.748 | 0.308 |
| predicted_SLG | 0.464 | 0.027 |
| predicted_SO | 0.728 | 0.385 |
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.444 | 0.000 |
| predicted_3B | 0.067 | 0.000 |
| predicted_AB | 6.676 | 0.000 |
| predicted_AVG | 0.295 | 0.009 |
| predicted_BB | 0.172 | -0.001 |
| predicted_H | 1.972 | -0.031 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.183 | -0.002 |
| predicted_OBP | 0.313 | -0.016 |
| predicted_R | 0.890 | -0.023 |
| predicted_RBI | 0.729 | -0.019 |
| predicted_SLG | 0.464 | 0.001 |
| predicted_SO | 0.730 | 0.002 |
AB rounded to 7 (raw=6.68), rates preserved: AVG=0.295 HR/AB=0.027
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 0.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.222)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 2.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 | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.444 |
| predicted_3B | 0.000 | -0.067 |
| predicted_AB | 7.000 | 0.324 |
| predicted_AVG | 0.286 | -0.009 |
| predicted_BB | 0.000 | -0.172 |
| predicted_H | 2.000 | 0.028 |
| predicted_HR | 0.000 | -0.183 |
| predicted_OBP | 0.286 | -0.027 |
| predicted_R | 1.000 | 0.110 |
| predicted_RBI | 1.000 | 0.271 |
| predicted_SLG | 0.286 | -0.178 |
| 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 | -3.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 7.000 | 0.000 | 1.000 | 1.000 | 3.000 | 5.000 | 0.000 | 4.000 | 0.3333 | 0.3333 | 0.5714 | 0.3333 | 0.0476 | 0.1429 | 0.0000 | 0.1905 |
| last_10 | 0.20 | 10 | - | 41.000 | 15.000 | 2.000 | 1.000 | 1.000 | 5.000 | 8.000 | 0.000 | 6.000 | 0.3659 | 0.3659 | 0.5366 | 0.3659 | 0.0244 | 0.1220 | 0.0000 | 0.1463 |
| season | 0.60 | 65 | - | 922.000 | 281.000 | 76.000 | 1.000 | 23.000 | 93.000 | 101.000 | 31.000 | 79.000 | 0.3048 | 0.3260 | 0.4642 | 0.3048 | 0.0249 | 0.1009 | 0.0336 | 0.0857 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5880 |
| predicted_3B | 0.1470 |
| predicted_AB | 9.9790 |
| predicted_AVG | 0.3205 |
| predicted_BB | 0.2190 |
| predicted_H | 3.1980 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.2940 |
| predicted_OBP | 0.3348 |
| predicted_R | 1.5130 |
| predicted_RBI | 1.1380 |
| predicted_SLG | 0.4973 |
| predicted_SO | 1.2160 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3300 | 0.5880 | 0.4438 | model_form_blend |
| predicted_3B | 0.0040 | 0.1470 | 0.0671 | model_form_blend |
| predicted_AB | 4.0700 | 9.9790 | 6.6765 | model_form_blend |
| predicted_AVG | 0.2600 | 0.3205 | 0.2867 | model_form_blend |
| predicted_BB | 0.1350 | 0.2190 | 0.1721 | model_form_blend |
| predicted_H | 1.0600 | 3.1980 | 2.0031 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1000 | 0.2940 | 0.1856 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3348 | 0.3293 | model_form_blend |
| predicted_R | 0.4390 | 1.5130 | 0.9127 | model_form_blend |
| predicted_RBI | 0.4400 | 1.1380 | 0.7479 | model_form_blend |
| predicted_SLG | 0.4370 | 0.4973 | 0.4636 | model_form_blend |
| predicted_SO | 0.3430 | 1.2160 | 0.7281 | 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 | 230 |
| 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.305 |
| 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 | 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 | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 676391 |
| playerID | 676391 |
| playerName | Ernie Clement |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-07 |
| sl_k_percent | 9.2 |
| sl_bb_percent | 3.1 |
| sl_woba | 0.343 |
| sl_xwoba | 0.278 |
| sl_xba | 0.261 |
| sl_xslg | 0.356 |
| sl_sweet_spot_percent | 31.9 |
| sl_barrel_batted_rate | 2.6 |
| sl_hard_hit_percent | 25.8 |
| sl_exit_velocity_avg | 85.7 |
| sl_launch_angle_avg | 15.3 |
| sl_whiff_percent | 15.1 |
| 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.000 | 1.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.667 | 4.000 | 4.000 | Hitting_AB | 3.667 | 3.000 | 0.333 | 1.000 |
| predicted_AVG | 0.245 | 0.500 | 0.250 | Hitting_AVG | 0.273 | 0.333 | 0.227 | 0.167 |
| 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.810 | 2.000 | 1.000 | Hitting_H | 1.000 | 1.000 | 1.000 | 1.000 |
| predicted_HR | 0.140 | 1.000 | 0.000 | Hitting_HR | 0.333 | 0.000 | 0.667 | 1.000 |
| predicted_OBP | 0.302 | 0.500 | 0.250 | Hitting_OBP | 0.273 | 0.333 | 0.227 | 0.167 |
| predicted_R | 0.667 | 1.000 | 1.000 | Hitting_R | 0.667 | 1.000 | 0.333 | 0.000 |
| predicted_RBI | 0.510 | 1.000 | 1.000 | Hitting_RBI | 1.000 | 1.000 | 0.000 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.428 | 1.500 | 0.250 | Hitting_SLG | 0.545 | 0.333 | 0.955 | 1.167 |
| predicted_SO | 0.667 | 0.000 | 1.000 | Hitting_SO | 0.667 | 1.000 | -0.667 | -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.8100 -> 2.0000 (boost 1.1900, 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 | 1 | 1 | 0 | 1 | 0 | predicted_BB: 0.0000 -> 0.0507 (boost 0.0507, 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.4321 -> 0.3571 (deboost -0.0750, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 4 | 2 | 3 | 3 | predicted_RBI: 0.5282 -> 1.0000 (boost 0.4718, better) | predicted_HR: 0.1494 -> 0.0000 (deboost -0.1494, worse) | AB rounded to 4 (raw=3.70), rates preserved: AVG=0.226 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6223 -> 1.0000 (boost 0.3777, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2259 -> 0.2500 (boost 0.0241, better) | predicted_SLG: 0.3571 -> 0.2500 (deboost -0.1071, 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_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.3571 (boost 0.1071, better) | predicted_AVG: 0.2500 -> 0.2259 (deboost -0.0241, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "807727",
"player_name": "Charles McAdoo",
"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.0,
"predicted_3B": 0.0,
"predicted_AB": 3.667,
"predicted_AVG": 0.245,
"predicted_BB": 0.0,
"predicted_H": 0.81,
"predicted_HR": 0.14,
"predicted_OBP": 0.302,
"predicted_R": 0.667,
"predicted_RBI": 0.51,
"predicted_SLG": 0.428,
"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.0321,
"predicted_3B": 0.0026,
"predicted_AB": 3.7015,
"predicted_AVG": 0.2476,
"predicted_BB": 0.0507,
"predicted_H": 0.8494,
"predicted_HBP": 0.025,
"predicted_HR": 0.1511,
"predicted_OBP": 0.3021,
"predicted_R": 0.6384,
"predicted_RBI": 0.5419,
"predicted_SLG": 0.4321,
"predicted_SO": 0.6989
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0321,
"delta": 0.0321,
"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.667,
"after": 3.7015,
"delta": 0.0345,
"percent_delta": 0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2476,
"delta": 0.0026,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0507,
"delta": 0.0507,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 0.8494,
"delta": 0.0394,
"percent_delta": 0.0486,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1511,
"delta": 0.0111,
"percent_delta": 0.0793,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.302,
"after": 0.3021,
"delta": 0.0001,
"percent_delta": 0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.6384,
"delta": -0.0286,
"percent_delta": -0.0429,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.5419,
"delta": 0.0319,
"percent_delta": 0.0625,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.4321,
"delta": 0.0041,
"percent_delta": 0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.667,
"after": 0.6989,
"delta": 0.0319,
"percent_delta": 0.0478,
"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": 0.0507,
"delta": 0.0507,
"percent_delta": null,
"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": 3,
"last_10": 3,
"season": 3
}
},
{
"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.0321,
"predicted_3B": 0.0026,
"predicted_AB": 3.7015,
"predicted_AVG": 0.2259,
"predicted_BB": 0.0505,
"predicted_H": 0.8363,
"predicted_HBP": 0.025,
"predicted_HR": 0.1494,
"predicted_OBP": 0.2364,
"predicted_R": 0.6223,
"predicted_RBI": 0.5282,
"predicted_SLG": 0.3571,
"predicted_SO": 0.7011
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0321,
"after": 0.0321,
"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.7015,
"after": 3.7015,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2476,
"after": 0.2259,
"delta": -0.0217,
"percent_delta": -0.0876,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0507,
"after": 0.0505,
"delta": -0.0002,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8494,
"after": 0.8363,
"delta": -0.0131,
"percent_delta": -0.0154,
"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.1511,
"after": 0.1494,
"delta": -0.0017,
"percent_delta": -0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3021,
"after": 0.2364,
"delta": -0.0657,
"percent_delta": -0.2175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6384,
"after": 0.6223,
"delta": -0.0161,
"percent_delta": -0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5419,
"after": 0.5282,
"delta": -0.0137,
"percent_delta": -0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4321,
"after": 0.3571,
"delta": -0.075,
"percent_delta": -0.1736,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6989,
"after": 0.7011,
"delta": 0.0022,
"percent_delta": 0.0031,
"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.4321,
"after": 0.3571,
"delta": -0.075,
"percent_delta": -0.1736,
"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.226 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.0321,
"after": 0.0,
"delta": -0.0321,
"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.7015,
"after": 4.0,
"delta": 0.2985,
"percent_delta": 0.0806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0505,
"after": 0.0,
"delta": -0.0505,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8363,
"after": 1.0,
"delta": 0.1637,
"percent_delta": 0.1957,
"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.1494,
"after": 0.0,
"delta": -0.1494,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5282,
"after": 1.0,
"delta": 0.4718,
"percent_delta": 0.8932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7011,
"after": 1.0,
"delta": 0.2989,
"percent_delta": 0.4263,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 4,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5282,
"after": 1.0,
"delta": 0.4718,
"percent_delta": 0.8932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.1494,
"after": 0.0,
"delta": -0.1494,
"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.6223,
"after": 1.0,
"delta": 0.3777,
"percent_delta": 0.6069,
"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.6223,
"after": 1.0,
"delta": 0.3777,
"percent_delta": 0.6069,
"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.2259,
"after": 0.25,
"delta": 0.0241,
"percent_delta": 0.1067,
"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.2364,
"after": 0.25,
"delta": 0.0136,
"percent_delta": 0.0575,
"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.3571,
"after": 0.25,
"delta": -0.1071,
"percent_delta": -0.2999,
"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.2259,
"after": 0.25,
"delta": 0.0241,
"percent_delta": 0.1067,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3571,
"after": 0.25,
"delta": -0.1071,
"percent_delta": -0.2999,
"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": 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": 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": 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_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.2259,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2364,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3571,
"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.2259,
"delta": -0.0241,
"percent_delta": -0.0962,
"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.25,
"after": 0.2364,
"delta": -0.0136,
"percent_delta": -0.0545,
"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.3571,
"delta": 0.1071,
"percent_delta": 0.4283,
"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.3571,
"delta": 0.1071,
"percent_delta": 0.4283,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2259,
"delta": -0.0241,
"percent_delta": -0.0962,
"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": 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.667,
"after": 4.0,
"delta": 0.333,
"percent_delta": 0.0908,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2259,
"delta": -0.0191,
"percent_delta": -0.078,
"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": 0.81,
"after": 2.0,
"delta": 1.19,
"percent_delta": 1.4691,
"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.302,
"after": 0.2364,
"delta": -0.0656,
"percent_delta": -0.2172,
"direction": "deboost",
"projection_effect": "worse",
"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.51,
"after": 1.0,
"delta": 0.49,
"percent_delta": 0.9608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.3571,
"delta": -0.0709,
"percent_delta": -0.1657,
"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": 6,
"deboosted_metrics": 4,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.81,
"after": 2.0,
"delta": 1.19,
"percent_delta": 1.4691,
"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": "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 | 3.667 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.302 | - |
| predicted_R | 0.667 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.428 | - |
| 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.032 | 0.032 |
| predicted_3B | 0.003 | 0.003 |
| predicted_AB | 3.701 | 0.034 |
| predicted_AVG | 0.248 | 0.003 |
| predicted_BB | 0.051 | 0.051 |
| predicted_H | 0.849 | 0.039 |
| predicted_HBP | 0.025 | - |
| predicted_HR | 0.151 | 0.011 |
| predicted_OBP | 0.302 | 0.000 |
| predicted_R | 0.638 | -0.029 |
| predicted_RBI | 0.542 | 0.032 |
| predicted_SLG | 0.432 | 0.004 |
| predicted_SO | 0.699 | 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.032 | 0.000 |
| predicted_3B | 0.003 | 0.000 |
| predicted_AB | 3.701 | 0.000 |
| predicted_AVG | 0.226 | -0.022 |
| predicted_BB | 0.051 | -0.000 |
| predicted_H | 0.836 | -0.013 |
| predicted_HBP | 0.025 | 0.000 |
| predicted_HR | 0.149 | -0.002 |
| predicted_OBP | 0.236 | -0.066 |
| predicted_R | 0.622 | -0.016 |
| predicted_RBI | 0.528 | -0.014 |
| predicted_SLG | 0.357 | -0.075 |
| predicted_SO | 0.701 | 0.002 |
AB rounded to 4 (raw=3.70), rates preserved: AVG=0.226 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 | 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.299 |
| predicted_AVG | 0.250 | 0.024 |
| predicted_BB | 0.000 | -0.051 |
| predicted_H | 1.000 | 0.164 |
| predicted_HR | 0.000 | -0.149 |
| predicted_OBP | 0.250 | 0.014 |
| predicted_R | 1.000 | 0.378 |
| predicted_RBI | 1.000 | 0.472 |
| predicted_SLG | 0.250 | -0.107 |
| predicted_SO | 1.000 | 0.299 |
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 | 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 | 3 | - | 11.000 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 2.000 | 0.2727 | 0.2727 | 0.5455 | 0.2727 | 0.0909 | 0.2727 | 0.0000 | 0.1818 |
| last_10 | 0.20 | 3 | - | 11.000 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 2.000 | 0.2727 | 0.2727 | 0.5455 | 0.2727 | 0.0909 | 0.2727 | 0.0000 | 0.1818 |
| season | 0.60 | 3 | - | 11.000 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 2.000 | 0.2727 | 0.2727 | 0.5455 | 0.2727 | 0.0909 | 0.2727 | 0.0000 | 0.1818 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1360 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.8130 |
| predicted_AVG | 0.2562 |
| predicted_BB | 0.2150 |
| predicted_H | 0.9770 |
| predicted_HBP | 0.0250 |
| predicted_HR | 0.1870 |
| predicted_OBP | 0.3025 |
| predicted_R | 0.5460 |
| predicted_RBI | 0.6450 |
| predicted_SLG | 0.4452 |
| predicted_SO | 0.8020 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1360 | 0.0321 | model_form_blend |
| predicted_3B | 0.0000 | 0.0110 | 0.0026 | model_form_blend |
| predicted_AB | 3.6670 | 3.8130 | 3.7015 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2562 | 0.2476 | model_form_blend |
| predicted_BB | 0.0000 | 0.2150 | 0.0507 | model_form_blend |
| predicted_H | 0.8100 | 0.9770 | 0.8494 | model_form_blend |
| predicted_HBP | - | 0.0250 | 0.0250 | form_only |
| predicted_HR | 0.1400 | 0.1870 | 0.1511 | model_form_blend |
| predicted_OBP | 0.3020 | 0.3025 | 0.3021 | model_form_blend |
| predicted_R | 0.6670 | 0.5460 | 0.6384 | model_form_blend |
| predicted_RBI | 0.5100 | 0.6450 | 0.5419 | model_form_blend |
| predicted_SLG | 0.4280 | 0.4452 | 0.4321 | model_form_blend |
| predicted_SO | 0.6670 | 0.8020 | 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 | 3 |
| Season rows before report date | 3 |
| Report year | 2026 |
| Profile rows used | 3 |
| 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 | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.273 |
| 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 | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | 2B |
| gameID | 20260604_TOR@ATL |
| game_type | full |
| mlbID | 807727 |
| playerID | 807727 |
| playerName | Charles McAdoo |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-04 |
| sl_k_percent | 18.2 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.351 |
| sl_xwoba | 0.373 |
| sl_xba | 0.317 |
| sl_xslg | 0.545 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 11.1 |
| sl_hard_hit_percent | 55.6 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 17.4 |
| sl_whiff_percent | 26.3 |
| sl_swing_percent | 57.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 | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.455 | 2.000 | -0.455 | -1.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 2.182 | 4.000 | 0.818 | -1.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 5.364 | 6.000 | 0.636 | 0.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 4.791 | 5.000 | 0.209 | 0.000 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 3.364 | 1.000 | 0.636 | 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": "571578",
"player_name": "Patrick Corbin",
"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": 1.0,
"predicted_ER": 3.0,
"predicted_H": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 5.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": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 3.0,
"predicted_H": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_R": 3.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": 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": 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": 1.0,
"after": 1.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": 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.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,
"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 | 3.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.000 | - |
| 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 | 24.100 | 12.000 | 30.000 | 7.000 | 16.000 | 3.000 | 4.4384 | 1.5205 | 0.4931 | 1.2329 | 0.2877 | 0.6575 | 0.1233 |
| last_10 | 0.35 | 10 | 50.100 | 20.000 | 53.000 | 15.000 | 34.000 | 4.000 | 3.5762 | 1.3510 | 0.3973 | 1.0530 | 0.2980 | 0.6755 | 0.0795 |
| season | 0.20 | 11 | 54.100 | 24.000 | 59.000 | 16.000 | 37.000 | 6.000 | 3.9755 | 1.3804 | 0.4417 | 1.0859 | 0.2945 | 0.6810 | 0.1104 |
| Metric | Value |
|---|---|
| predicted_BB | 1.5750 |
| predicted_ER | 2.3020 |
| predicted_ERA | 4.1438 |
| predicted_H | 5.4170 |
| predicted_HR | 0.5800 |
| predicted_IP | 5.0000 |
| predicted_SO | 3.7580 |
| predicted_WHIP | 1.3984 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.5750 | 1.2978 | model_form_blend |
| predicted_ER | 3.0000 | 2.3020 | 2.6385 | model_form_blend |
| predicted_ERA | - | 4.1438 | 4.1438 | form_only |
| predicted_H | 6.0000 | 5.4170 | 5.6980 | model_form_blend |
| predicted_HR | 0.0000 | 0.5800 | 0.3004 | model_form_blend |
| predicted_IP | 5.0000 | 5.0000 | 5.0000 | model_form_blend |
| predicted_SO | 4.0000 | 3.7580 | 3.8747 | model_form_blend |
| predicted_WHIP | - | 1.3984 | 1.3984 | 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 | 11 |
| Season rows before report date | 11 |
| Report year | 2026 |
| Profile rows used | 11 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.0 |
| H | 6 |
| R | 3 |
| ER | 3 |
| BB | 1 |
| SO | 4 |
| HR | 0 |
| BF | 22 |
| Pitches | 93 |
| 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 | 23 |
| Pitching_ER | 4 |
| Pitching_ERA | 3.98 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 7 |
| Pitching_H | 6 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 85 |
| Pitching_R | 4 |
| Pitching_SO | 1 |
| Pitching_Strikes | 53 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260603_TOR@ATL |
| game_type | full |
| mlbID | 571578 |
| playerID | 571578 |
| playerName | Patrick Corbin |
| pos | P |
| started | True |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-03 |
| sl_k_percent | 15.8 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.341 |
| sl_xwoba | 0.356 |
| sl_sweet_spot_percent | 38.4 |
| sl_barrel_batted_rate | 7.9 |
| sl_hard_hit_percent | 44.1 |
| sl_whiff_percent | 19.2 |
| sl_swing_percent | 48.6 |
| sl_avg_best_speed | 77.87779 |
| sl_avg_hyper_speed | 94.610760852 |
| 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.394 | 1.000 | -0.394 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.303 | 0.000 | -0.303 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.636 | 1.000 | -0.636 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.915 | 1.000 | 0.085 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.121 | 2.000 | -0.121 | -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": "680755",
"player_name": "Braydon Fisher",
"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": 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 | 1.000 | 2.000 | 1.000 | 5.000 | 1.000 | 1.9286 | 0.6429 | 0.2143 | 0.4286 | 0.2143 | 1.0714 | 0.2143 |
| last_10 | 0.35 | 10 | 10.200 | 1.000 | 4.000 | 3.000 | 14.000 | 1.000 | 0.8438 | 0.6562 | 0.0938 | 0.3750 | 0.2812 | 1.3125 | 0.0938 |
| season | 0.20 | 33 | 35.100 | 10.000 | 21.000 | 13.000 | 37.000 | 3.000 | 2.5472 | 0.9623 | 0.2830 | 0.5943 | 0.3679 | 1.0472 | 0.0849 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3090 |
| predicted_ER | 0.3110 |
| predicted_ERA | 2.7960 |
| predicted_H | 0.6580 |
| predicted_HR | 0.1430 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0610 |
| predicted_WHIP | 0.9663 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3090 | 0.1463 | model_form_blend |
| predicted_ER | 0.0000 | 0.3110 | 0.1473 | model_form_blend |
| predicted_ERA | - | 2.7960 | 2.7960 | form_only |
| predicted_H | 0.0000 | 0.6580 | 0.3116 | model_form_blend |
| predicted_HR | 0.0000 | 0.1430 | 0.0677 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0610 | 1.0289 | model_form_blend |
| predicted_WHIP | - | 0.9663 | 0.9663 | 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 | 0 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.55 |
| 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 | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260606_BAL@TOR |
| game_type | full |
| mlbID | 680755 |
| playerID | 680755 |
| playerName | Braydon Fisher |
| pos | P |
| started | True |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-06 |
| sl_k_percent | 27.6 |
| sl_bb_percent | 9.7 |
| sl_woba | 0.259 |
| sl_xwoba | 0.296 |
| sl_sweet_spot_percent | 30.5 |
| sl_barrel_batted_rate | 11.0 |
| sl_hard_hit_percent | 39.0 |
| sl_whiff_percent | 30.6 |
| sl_swing_percent | 45.2 |
| sl_avg_best_speed | 77.090262439 |
| sl_avg_hyper_speed | 93.679953537 |
| 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.633 | 1.000 | -0.633 | -1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.200 | 1.000 | -0.200 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.810 | 0.200 | 0.190 | 0.800 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.567 | 1.000 | 0.433 | 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": "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": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.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": 1.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": 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": 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": 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": 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 | 1.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.100 | 6.000 | 7.000 | 2.000 | 7.000 | 1.000 | 12.4615 | 2.0769 | 1.3846 | 1.6154 | 0.4615 | 1.6154 | 0.2308 |
| last_10 | 0.35 | 10 | 8.200 | 7.000 | 10.000 | 3.000 | 15.000 | 1.000 | 7.2692 | 1.5000 | 0.8077 | 1.1539 | 0.3462 | 1.7308 | 0.1154 |
| season | 0.20 | 30 | 27.100 | 19.000 | 36.000 | 10.000 | 47.000 | 4.000 | 6.2561 | 1.6829 | 0.6951 | 1.3171 | 0.3659 | 1.7195 | 0.1463 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3840 |
| predicted_ER | 0.7760 |
| predicted_ERA | 6.9795 |
| predicted_H | 1.1840 |
| predicted_HR | 0.1570 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.3200 |
| predicted_WHIP | 1.5681 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3840 | 0.1716 | model_form_blend |
| predicted_ER | 0.0000 | 0.7760 | 0.3467 | model_form_blend |
| predicted_ERA | - | 6.9795 | 6.9795 | form_only |
| predicted_H | 1.0000 | 1.1840 | 1.0822 | model_form_blend |
| predicted_HR | 0.0000 | 0.1570 | 0.0702 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.3200 | 1.6962 | model_form_blend |
| predicted_WHIP | - | 1.5681 | 1.5681 | 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 | 2 |
| 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 | 1 |
| Pitching_ERA | 6.26 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 13 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260606_BAL@TOR |
| game_type | full |
| mlbID | 656546 |
| playerID | 656546 |
| playerName | Jeff Hoffman |
| pos | P |
| started | False |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-06 |
| sl_k_percent | 36.4 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.37 |
| sl_xwoba | 0.289 |
| sl_sweet_spot_percent | 31.9 |
| sl_barrel_batted_rate | 7.4 |
| sl_hard_hit_percent | 30.4 |
| sl_whiff_percent | 42.5 |
| sl_swing_percent | 50.1 |
| sl_avg_best_speed | 77.905132059 |
| sl_avg_hyper_speed | 92.824824776 |
| 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.032 | 0.000 | -0.032 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.774 | 1.000 | -0.774 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.013 | 1.100 | -0.013 | -0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.452 | 2.000 | -0.452 | -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": "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": 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 | 6.000 | 0.000 | 2.000 | 0.000 | 4.000 | 0.000 | 0.0000 | 0.3333 | 0.0000 | 0.3333 | 0.0000 | 0.6667 | 0.0000 |
| last_10 | 0.35 | 10 | 13.000 | 0.000 | 7.000 | 0.000 | 13.000 | 0.000 | 0.0000 | 0.5385 | 0.0000 | 0.5385 | 0.0000 | 1.0000 | 0.0000 |
| season | 0.20 | 31 | 34.200 | 1.000 | 24.000 | 9.000 | 45.000 | 0.000 | 0.2596 | 0.9519 | 0.0289 | 0.6923 | 0.2596 | 1.2981 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2120 |
| predicted_ER | 0.2400 |
| predicted_ERA | 1.8718 |
| predicted_H | 0.7850 |
| predicted_HR | 0.0680 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0620 |
| predicted_WHIP | 0.8636 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2120 | 0.1000 | model_form_blend |
| predicted_ER | 0.0000 | 0.2400 | 0.1132 | model_form_blend |
| predicted_ERA | - | 1.8718 | 1.8718 | form_only |
| predicted_H | 0.0000 | 0.7850 | 0.3703 | model_form_blend |
| predicted_HR | 0.0000 | 0.0680 | 0.0321 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0620 | 1.0292 | model_form_blend |
| predicted_WHIP | - | 0.8636 | 0.8636 | 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 | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.26 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 17 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 686973 |
| playerID | 686973 |
| playerName | Louis Varland |
| pos | P |
| started | False |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-07 |
| sl_k_percent | 34.1 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.216 |
| sl_xwoba | 0.212 |
| sl_sweet_spot_percent | 21.8 |
| sl_barrel_batted_rate | 1.3 |
| sl_hard_hit_percent | 35.9 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 51.7 |
| sl_avg_best_speed | 74.175049487 |
| sl_avg_hyper_speed | 93.333978077 |
| 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.323 | 1.000 | -0.323 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.226 | 0.000 | -0.226 | 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.877 | 1.100 | 0.123 | -0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.581 | 1.000 | 0.419 | 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": 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 | 0.000 | 2.000 | 1.000 | 3.000 | 0.000 | 0.0000 | 0.6000 | 0.0000 | 0.4000 | 0.2000 | 0.6000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 3.000 | 4.000 | 4.000 | 5.000 | 0.000 | 2.7931 | 0.8276 | 0.3103 | 0.4138 | 0.4138 | 0.5172 | 0.0000 |
| season | 0.20 | 31 | 30.000 | 7.000 | 21.000 | 10.000 | 18.000 | 0.000 | 2.1000 | 1.0333 | 0.2333 | 0.7000 | 0.3333 | 0.6000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3300 |
| predicted_ER | 0.3060 |
| predicted_ERA | 2.7550 |
| predicted_H | 0.6900 |
| predicted_HR | 0.0640 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7370 |
| predicted_WHIP | 1.0206 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3300 | 0.1507 | model_form_blend |
| predicted_ER | 0.0000 | 0.3060 | 0.1397 | model_form_blend |
| predicted_ERA | - | 2.7550 | 2.7550 | form_only |
| predicted_H | 0.0000 | 0.6900 | 0.3151 | model_form_blend |
| predicted_HR | 0.0000 | 0.0640 | 0.0292 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.7370 | 0.8799 | model_form_blend |
| predicted_WHIP | - | 1.0206 | 1.0206 | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.10 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 17 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 643511 |
| playerID | 643511 |
| playerName | Tyler Rogers |
| pos | P |
| started | False |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-07 |
| sl_k_percent | 15.1 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.216 |
| sl_xwoba | 0.24 |
| sl_sweet_spot_percent | 22.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 22.0 |
| sl_whiff_percent | 14.9 |
| sl_swing_percent | 48.6 |
| sl_avg_best_speed | 71.578151591 |
| sl_avg_hyper_speed | 91.881920341 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | SEA 3 - 1 BAL | SEA | 0.572 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | SEA 4 - 1 BAL | 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.5723 |
| 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.224 | 4.093 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 1 | 0.5723 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 3 | 1 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 3 | 1 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 4 | 1 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4744516728624536,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.051589219330855085,
"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": 4,
"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": 55,
"near_bucket_sample_size": 7,
"medium_bucket_sample_size": 16,
"wide_bucket_sample_size": 55,
"global_sample_size": 143,
"bucket_scope": "pooled_0.12",
"sparse_bucket": false,
"empirical_hit_rate": 0.5273,
"bayesian_hit_rate": 0.5205,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.7534,
"confidence_cap": 0.78,
"raw_pick_probability": 0.67,
"calibrated_pick_probability": 0.5723,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "BAL",
"games": 66,
"wins": 31,
"losses": 35,
"win_pct": 0.4696969696969697,
"runs_scored": 309,
"runs_allowed": 340,
"run_differential": -31,
"run_differential_per_game": -0.4696969696969697,
"available": true
},
"away": {
"team": "SEA",
"games": 66,
"wins": 34,
"losses": 32,
"win_pct": 0.5151515151515151,
"runs_scored": 278,
"runs_allowed": 249,
"run_differential": 29,
"run_differential_per_game": 0.4393939393939394,
"available": true
},
"run_differential_edge_per_game": -0.9091,
"win_pct_edge": -0.0455,
"quality_edge": -0.9773,
"margin_adjustment": -0.4105,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.869,
"home_runs": 1.101,
"home_win_probability": 0.2647
}
}{
"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": 1,
"score_text": "SEA 3 - 1 BAL",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "SEA 4 - 1 BAL",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 0,
"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": "BAL",
"games": 66,
"wins": 31,
"losses": 35,
"win_pct": 0.4696969696969697,
"runs_scored": 309,
"runs_allowed": 340,
"run_differential": -31,
"run_differential_per_game": -0.4696969696969697,
"available": true
},
"away": {
"team": "SEA",
"games": 66,
"wins": 34,
"losses": 32,
"win_pct": 0.5151515151515151,
"runs_scored": 278,
"runs_allowed": 249,
"run_differential": 29,
"run_differential_per_game": 0.4393939393939394,
"available": true
}
}
}{
"applied": true,
"raw_margin": -2.7682,
"final_margin": -2.0,
"margin_cap": 2.0,
"season_quality_edge": 0.9773,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 3.485,
"home_runs": 1.485
}
}{
"applied": false,
"raw_confidence": 0.572296,
"final_confidence": 0.572296,
"confidence_cap": 0.63,
"score_gap": 2.0,
"calibration_sample_size": 55,
"calibration_empirical_hit_rate": 0.5273,
"calibration_bayesian_hit_rate": 0.5205,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.9773,
"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": 1,
"score_text": "SEA 3 - 1 BAL",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "SEA 4 - 1 BAL",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 0,
"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": 3,
"home_runs": 1,
"confidence": 0.572296,
"home_win_probability": 0.427704,
"away_win_probability": 0.572296,
"predicted_score_text": "SEA 3 - 1 BAL",
"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": "SEA",
"original_runs": 3,
"run_delta": -0.0238,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 45.0,
"quality": 0.2871081364360399,
"contact": 0.39357226689931396,
"power": 0.4340984826079326,
"discipline": -0.2631634859261845,
"xwoba": 0.3404222222222222,
"recent_xwoba": 0.3404222222222222,
"barrel": 9.891111111111114,
"ab_hard_contact": 0.2234511336401382,
"ab_bat_speed": 71.78250804354289,
"ab_strikeout_rate": 0.24697218669044066,
"available_players": 8,
"top_players": [
{
"player_id": "686527",
"player_name": "Dominic Canzone",
"position": "DH",
"weight": 4.0,
"quality": 0.6568892530322628,
"contact": 1.2314112340062104,
"power": 1.741822458532759,
"discipline": -0.2615123456790124,
"xwoba": 0.377,
"recent_xwoba": 0.377,
"barrel": 16.7,
"ab_hard_contact": 0.3057825039885235,
"ab_bat_speed": 73.09844753086419,
"ab_strikeout_rate": 0.23814814814814816,
"available": 1.0
},
{
"player_id": "670042",
"player_name": "Luke Raley",
"position": "RF",
"weight": 5.0,
"quality": 0.5266929115422976,
"contact": 0.5854740829858026,
"power": 1.7935245473373618,
"discipline": -1.5643471907281434,
"xwoba": 0.374,
"recent_xwoba": 0.374,
"barrel": 19.1,
"ab_hard_contact": 0.8064909467472402,
"ab_bat_speed": 73.79295027534823,
"ab_strikeout_rate": 0.3860544217687075,
"available": 1.0
},
{
"player_id": "669208",
"player_name": "Ryan Bliss",
"position": "2B",
"weight": 3.0,
"quality": -0.002280683631212553,
"contact": -1.7999999999999998,
"power": -2.0,
"discipline": 0.14999999999999986,
"xwoba": 0.315,
"recent_xwoba": 0.315,
"barrel": 7.7,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26396983685248,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
},
{
"player_id": "677594",
"player_name": "Julio Rodríguez",
"position": "CF",
"weight": 7.0,
"quality": 0.4378788338978569,
"contact": 0.4864561861199139,
"power": 0.6529518124141739,
"discipline": -0.2842366465104561,
"xwoba": 0.338,
"recent_xwoba": 0.338,
"barrel": 9.2,
"ab_hard_contact": 0.6517981530453901,
"ab_bat_speed": 75.45754712301587,
"ab_strikeout_rate": 0.21594387755102043,
"available": 1.0
},
{
"player_id": "668227",
"player_name": "Randy Arozarena",
"position": "LF",
"weight": 6.0,
"quality": 0.39110226124975594,
"contact": 0.6570820596014492,
"power": 0.355502988257428,
"discipline": -0.036257054673721464,
"xwoba": 0.353,
"recent_xwoba": 0.353,
"barrel": 7.7,
"ab_hard_contact": 0.0033930984818991566,
"ab_bat_speed": 69.1499007936508,
"ab_strikeout_rate": 0.24910714285714283,
"available": 1.0
}
]
},
"opposing_starter": {
"available": false,
"player_id": "694346",
"player_name": "Trey Gibson",
"quality": 0.0,
"contact": 0.0,
"command": 0.0,
"movement": 0.0,
"xwoba": 0.0,
"whiff": 0.0,
"faced_est_woba": 0.0,
"faced_launch_speed": 0.0,
"faced_strikeout_rate": 0.0,
"faced_run_exp": 0.0
}
},
"home": {
"team": "BAL",
"original_runs": 1,
"run_delta": 0.1401,
"adjusted_runs": 1,
"lineup": {
"players_used": 9,
"total_weight": 50.0,
"quality": 0.1980541074646591,
"contact": 0.09370703287689768,
"power": 0.2980597425706242,
"discipline": -0.1551302580748673,
"xwoba": 0.30848,
"recent_xwoba": 0.30848,
"barrel": 9.975999999999999,
"ab_hard_contact": 0.1389434228410563,
"ab_bat_speed": 70.80714778269412,
"ab_strikeout_rate": 0.294423908868518,
"available_players": 9,
"top_players": [
{
"player_id": "624413",
"player_name": "Pete Alonso",
"position": "1B",
"weight": 7.0,
"quality": 1.2383940059383514,
"contact": 1.3293256423206483,
"power": 1.5581822569643418,
"discipline": 0.08215520282186939,
"xwoba": 0.37,
"recent_xwoba": 0.37,
"barrel": 12.2,
"ab_hard_contact": 1.0798356154773119,
"ab_bat_speed": 73.31301087595531,
"ab_strikeout_rate": 0.24369488536155204,
"available": 1.0
},
{
"player_id": "665750",
"player_name": "Leody Taveras",
"position": "RF",
"weight": 5.0,
"quality": -0.3807571899518737,
"contact": -0.487733545395782,
"power": -0.834753025848765,
"discipline": 0.272484085968582,
"xwoba": 0.307,
"recent_xwoba": 0.307,
"barrel": 3.9,
"ab_hard_contact": -0.5682033741181644,
"ab_bat_speed": 68.59897286821705,
"ab_strikeout_rate": 0.25329457364341085,
"available": 1.0
},
{
"player_id": "621493",
"player_name": "Taylor Ward",
"position": "LF",
"weight": 7.0,
"quality": 0.304986965989557,
"contact": 0.4835681807267862,
"power": -0.21157488163443555,
"discipline": 1.4766452364314,
"xwoba": 0.349,
"recent_xwoba": 0.349,
"barrel": 5.1,
"ab_hard_contact": 0.16964522445414332,
"ab_bat_speed": 65.58632936507937,
"ab_strikeout_rate": 0.20849056603773586,
"available": 1.0
},
{
"player_id": "677942",
"player_name": "Blaze Alexander",
"position": "SS",
"weight": 5.0,
"quality": 0.24425977805306973,
"contact": 0.8110104435300206,
"power": 0.30707210953719016,
"discipline": -0.541390581057248,
"xwoba": 0.338,
"recent_xwoba": 0.338,
"barrel": 4.9,
"ab_hard_contact": 0.23325171455332722,
"ab_bat_speed": 71.06386786786787,
"ab_strikeout_rate": 0.25495495495495496,
"available": 1.0
},
{
"player_id": "681297",
"player_name": "Colton Cowser",
"position": "CF",
"weight": 4.0,
"quality": -0.13021372881138268,
"contact": -0.7202243873613101,
"power": 0.22790850029723336,
"discipline": -0.2943208519875187,
"xwoba": 0.315,
"recent_xwoba": 0.315,
"barrel": 12.5,
"ab_hard_contact": 0.0892176249922886,
"ab_bat_speed": 71.73337464387464,
"ab_strikeout_rate": 0.34017094017094013,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "676106",
"player_name": "Emerson Hancock",
"quality": -0.05293231463852194,
"contact": -0.06731910659070386,
"command": 0.1479977605593547,
"movement": -0.03838428150184707,
"xwoba": 0.321,
"whiff": 23.5,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"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": 1,
"predicted_score_text": "SEA 3 - 1 BAL",
"confidence": 0.572296,
"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": 1,
"score_text": "SEA 3 - 1 BAL",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "SEA 4 - 1 BAL",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 0,
"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 SEA | True | 1.0387 | 1.0387 | 1 | 9 | 0 |
| Home BAL | True | 1.0175 | 1.0175 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CF | Julio Rodríguez | 52 | 1.0483 | 0.6437 | neutral | 0.3380 | 0.2620 | 0.4630 | 9.20 | 43.70 | 90.30 | 13 | 27.40 | 21.30 | 7.20 | 0 |
| SS | Cole Young | 30 | 1.0284 | 0.3790 | neutral | 0.3290 | 0.2690 | 0.4060 | 5.40 | 36.80 | 87.50 | 17.10 | 22.70 | 19.80 | 7.60 | 0.6286 |
| LF | Randy Arozarena | 20 | 1.0519 | 0.6917 | neutral | 0.3530 | 0.2680 | 0.4250 | 7.70 | 42.30 | 91.50 | 7.90 | 27.20 | 22.30 | 9.60 | -0.3143 |
| 1B | Josh Naylor | 383 | 1.0292 | 0.3892 | neutral | 0.3270 | 0.2760 | 0.4090 | 5.30 | 38.30 | 87.80 | 14.10 | 20.50 | 13.50 | 7.90 | 0.6571 |
| RF | Luke Raley | 135 | 1.0720 | 0.9600 | neutral | 0.3740 | 0.2650 | 0.5540 | 19.10 | 46.40 | 90.10 | 15.80 | 42.10 | 33.20 | 4.80 | 0.1714 |
| DH | Dominic Canzone | 123 | 1.0667 | 0.8890 | neutral | 0.3770 | 0.2860 | 0.5300 | 16.70 | 50 | 93.60 | 13.30 | 29.80 | 21.70 | 8.30 | 0.1714 |
| 3B | Patrick Wisdom | 420 | 0.9969 | -0.0411 | positive_batter_regression | 0.2430 | 0.1820 | 0.3550 | 20 | 53.30 | 92.50 | 24.70 | 45.20 | 43.30 | 6.70 | 1.2000 |
| C | Jhonny Pereda | 244 | 1.0476 | 0.6352 | positive_batter_regression | 0.3800 | 0.3350 | 0.4650 | 4.90 | 48.80 | 90.60 | 13.10 | 17.30 | 13.20 | 7.50 | 0.9143 |
| 2B | Ryan Bliss | 372 | 1.0069 | 0.0914 | neutral | 0.3150 | 0.2460 | 0.3940 | 7.70 | 40.20 | 89.20 | 14.10 | 24.90 | 21.60 | 8.80 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Gunnar Henderson | 116 | 1.0079 | 0.1056 | neutral | 0.3030 | 0.2350 | 0.3990 | 9 | 45.20 | 89.10 | 11.90 | 24.60 | 25.80 | 6.40 | -0.0857 |
| CF | Colton Cowser | 149 | 1.0019 | 0.0259 | neutral | 0.3150 | 0.2130 | 0.4280 | 12.50 | 30.70 | 85.70 | 8.50 | 32.30 | 28.80 | 11 | -0.2857 |
| 1B | Pete Alonso | 83 | 1.1123 | 1.4971 | positive_batter_regression | 0.3700 | 0.2720 | 0.5140 | 12.20 | 56.10 | 95 | 14.70 | 27.40 | 22.50 | 10.60 | 0.9143 |
| LF | Taylor Ward | 62 | 1.0365 | 0.4866 | neutral | 0.3490 | 0.2520 | 0.3710 | 5.10 | 40.40 | 89.40 | 13.80 | 18.70 | 21.10 | 18.80 | 0 |
| RF | Leody Taveras | 125 | 0.9816 | -0.2455 | neutral | 0.3070 | 0.2410 | 0.3430 | 3.90 | 26.80 | 86.40 | 15.70 | 25.30 | 21.90 | 11.50 | -0.5429 |
| 3B | Coby Mayo | 485 | 1.0047 | 0.0623 | neutral | 0.2940 | 0.2180 | 0.3830 | 10.30 | 48.60 | 91.70 | 19.50 | 29.70 | 31.50 | 7.30 | 0.2286 |
| 2B | Jackson Holliday | 220 | 1.0191 | 0.2546 | neutral | 0.3380 | 0.2350 | 0.4070 | 8.80 | 41.20 | 89.30 | 16.80 | 31.10 | 27.60 | 13.80 | 0.3429 |
| SS | Blaze Alexander | 246 | 1.0325 | 0.4338 | neutral | 0.3380 | 0.2960 | 0.4310 | 4.90 | 46.10 | 92.30 | 9.80 | 28.80 | 25 | 6.60 | 0.5429 |
| C | Sam Huff | 343 | 0.9609 | -0.5219 | negative_batter_regression | 0.1320 | 0.1060 | 0.2090 | 25 | 75 | 100.20 | 22.50 | 45.50 | 55.60 | 0 | -2 |
{
"home": {
"applied": true,
"offense_factor": 1.0175,
"raw_average_factor": 1.0175,
"team_espn_average_rank": 203.22,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "683002",
"player_name": "Gunnar Henderson",
"offense_factor": 1.0079,
"quality_score": 0.1056,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683002",
"espn_id": 42507,
"player_name": "Gunnar Henderson",
"team": "BAL",
"role": "batter",
"espn_rank": 116,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 116,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 275.0,
"ab_rank": "1",
"r_value": 35.0,
"r_rank": "53",
"h_value": 61.0,
"h_rank": "53",
"avg_value": 0.2218181,
"avg_rank": 143.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 13.0,
"hr_rank": "26",
"rbi_value": 32.0,
"rbi_rank": "62",
"tb_value": 115.0,
"tb_rank": "284",
"bb_value": 19.0,
"bb_rank": "135",
"so_value": 77.0,
"so_rank": "14",
"sb_value": 6.0,
"sb_rank": "68",
"obp_value": 0.2785234,
"obp_rank": "157",
"slg_value": 0.4181818,
"slg_rank": "85",
"ops_value": 0.6967052,
"ops_rank": 118.0,
"war_value": 0.99,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 251.0,
"k_percent": 25.8,
"bb_percent": 6.4,
"woba": 0.306,
"xwoba": 0.303,
"xba": 0.235,
"xslg": 0.399,
"sweet_spot_percent": 30.7,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 45.2,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 11.9,
"whiff_percent": 24.6,
"swing_percent": 49.6
},
"components": {
"expected_quality": 0.1367,
"regression_edge": -0.0857,
"xwoba_edge": -0.0571,
"xba_edge": -0.1143,
"xslg_edge": 0.3571,
"barrel_edge": 0.4444,
"hard_hit_edge": 0.9071,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": -0.4333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "681297",
"player_name": "Colton Cowser",
"offense_factor": 1.0019,
"quality_score": 0.0259,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681297",
"espn_id": 4416990,
"player_name": "Colton Cowser",
"team": "BAL",
"role": "batter",
"espn_rank": 149,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 149,
"gp_value": 56.0,
"gp_rank": "158",
"ab_value": 127.0,
"ab_rank": "244",
"r_value": 20.0,
"r_rank": "188",
"h_value": 31.0,
"h_rank": "235",
"avg_value": 0.2440944,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 22.0,
"rbi_rank": "159",
"tb_value": 52.0,
"tb_rank": "1282",
"bb_value": 16.0,
"bb_rank": "172",
"so_value": 42.0,
"so_rank": "146",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3241379,
"obp_rank": "-",
"slg_value": 0.4094488,
"slg_rank": "-",
"ops_value": 0.7335867,
"ops_rank": null,
"war_value": 0.78,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 109.0,
"k_percent": 28.8,
"bb_percent": 11.0,
"woba": 0.325,
"xwoba": 0.315,
"xba": 0.213,
"xslg": 0.428,
"sweet_spot_percent": 30.7,
"barrel_batted_rate": 12.5,
"hard_hit_percent": 30.7,
"exit_velocity_avg": 85.7,
"launch_angle_avg": 8.5,
"whiff_percent": 32.3,
"swing_percent": 44.7
},
"components": {
"expected_quality": 0.1073,
"regression_edge": -0.2857,
"xwoba_edge": 0.2857,
"xba_edge": -0.7429,
"xslg_edge": 0.7714,
"barrel_edge": 1.2222,
"hard_hit_edge": -1.1643,
"exit_velocity_edge": -1.24,
"sweet_spot_edge": -0.4333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "624413",
"player_name": "Pete Alonso",
"offense_factor": 1.1123,
"quality_score": 1.4971,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "624413",
"espn_id": 37498,
"player_name": "Pete Alonso",
"team": "BAL",
"role": "batter",
"espn_rank": 83,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 83,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 251.0,
"ab_rank": "15",
"r_value": 38.0,
"r_rank": "41",
"h_value": 61.0,
"h_rank": "53",
"avg_value": 0.2430278,
"avg_rank": 99.0,
"2b_value": 12.0,
"2b_rank": "54",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 13.0,
"hr_rank": "26",
"rbi_value": 40.0,
"rbi_rank": "19",
"tb_value": 112.0,
"tb_rank": "539",
"bb_value": 30.0,
"bb_rank": "41",
"so_value": 64.0,
"so_rank": "40",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3239436,
"obp_rank": "101",
"slg_value": 0.4462151,
"slg_rank": "59",
"ops_value": 0.7701587,
"ops_rank": 76.0,
"war_value": 1.35,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 240.0,
"k_percent": 22.5,
"bb_percent": 10.6,
"woba": 0.338,
"xwoba": 0.37,
"xba": 0.272,
"xslg": 0.514,
"sweet_spot_percent": 32.3,
"barrel_batted_rate": 12.2,
"hard_hit_percent": 56.1,
"exit_velocity_avg": 95.0,
"launch_angle_avg": 14.7,
"whiff_percent": 27.4,
"swing_percent": 44.3
},
"components": {
"expected_quality": 1.592,
"regression_edge": 0.9143,
"xwoba_edge": 1.8571,
"xba_edge": 0.9429,
"xslg_edge": 2.0,
"barrel_edge": 1.1556,
"hard_hit_edge": 2.4643,
"exit_velocity_edge": 2.48,
"sweet_spot_edge": -0.1667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "621493",
"player_name": "Taylor Ward",
"offense_factor": 1.0365,
"quality_score": 0.4866,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "621493",
"espn_id": 34923,
"player_name": "Taylor Ward",
"team": "BAL",
"role": "batter",
"espn_rank": 62,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 62,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 239.0,
"ab_rank": "37",
"r_value": 40.0,
"r_rank": "26",
"h_value": 61.0,
"h_rank": "53",
"avg_value": 0.2552301,
"avg_rank": 76.0,
"2b_value": 16.0,
"2b_rank": "10",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 20.0,
"rbi_rank": "183",
"tb_value": 86.0,
"tb_rank": "1074",
"bb_value": 56.0,
"bb_rank": "3",
"so_value": 63.0,
"so_rank": "46",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3959731,
"obp_rank": "7",
"slg_value": 0.3598326,
"slg_rank": "133",
"ops_value": 0.7558057,
"ops_rank": 82.0,
"war_value": 1.57,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 249.0,
"k_percent": 21.1,
"bb_percent": 18.8,
"woba": 0.349,
"xwoba": 0.349,
"xba": 0.252,
"xslg": 0.371,
"sweet_spot_percent": 36.0,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 40.4,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 13.8,
"whiff_percent": 18.7,
"swing_percent": 31.6
},
"components": {
"expected_quality": 0.5658,
"regression_edge": 0.0,
"xwoba_edge": 1.2571,
"xba_edge": 0.3714,
"xslg_edge": -0.0429,
"barrel_edge": -0.4222,
"hard_hit_edge": 0.2214,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": 0.45,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "665750",
"player_name": "Leody Taveras",
"offense_factor": 0.9816,
"quality_score": -0.2455,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665750",
"espn_id": 34951,
"player_name": "Leody Taveras",
"team": "BAL",
"role": "batter",
"espn_rank": 125,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 125,
"gp_value": 55.0,
"gp_rank": "164",
"ab_value": 163.0,
"ab_rank": "189",
"r_value": 23.0,
"r_rank": "153",
"h_value": 42.0,
"h_rank": "165",
"avg_value": 0.2576687,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 24.0,
"rbi_rank": "140",
"tb_value": 60.0,
"tb_rank": "1168",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 42.0,
"so_rank": "146",
"sb_value": 7.0,
"sb_rank": "52",
"obp_value": 0.3494623,
"obp_rank": "-",
"slg_value": 0.3680981,
"slg_rank": "-",
"ops_value": 0.7175604,
"ops_rank": null,
"war_value": 0.92,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 21.9,
"bb_percent": 11.5,
"woba": 0.326,
"xwoba": 0.307,
"xba": 0.241,
"xslg": 0.343,
"sweet_spot_percent": 33.1,
"barrel_batted_rate": 3.9,
"hard_hit_percent": 26.8,
"exit_velocity_avg": 86.4,
"launch_angle_avg": 15.7,
"whiff_percent": 25.3,
"swing_percent": 46.7
},
"components": {
"expected_quality": -0.3116,
"regression_edge": -0.5429,
"xwoba_edge": 0.0571,
"xba_edge": 0.0571,
"xslg_edge": -0.4429,
"barrel_edge": -0.6889,
"hard_hit_edge": -1.7214,
"exit_velocity_edge": -0.96,
"sweet_spot_edge": -0.0333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "691723",
"player_name": "Coby Mayo",
"offense_factor": 1.0047,
"quality_score": 0.0623,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691723",
"espn_id": 4683371,
"player_name": "Coby Mayo",
"team": "BAL",
"role": "batter",
"espn_rank": 485,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 485,
"gp_value": 52.0,
"gp_rank": "186",
"ab_value": 162.0,
"ab_rank": "192",
"r_value": 22.0,
"r_rank": "168",
"h_value": 32.0,
"h_rank": "230",
"avg_value": 0.1975308,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": "214",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 62.0,
"tb_rank": "1026",
"bb_value": 13.0,
"bb_rank": "212",
"so_value": 56.0,
"so_rank": "74",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2640449,
"obp_rank": "-",
"slg_value": 0.382716,
"slg_rank": "-",
"ops_value": 0.6467609,
"ops_rank": null,
"war_value": -0.37,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 150.0,
"k_percent": 31.5,
"bb_percent": 7.3,
"woba": 0.286,
"xwoba": 0.294,
"xba": 0.218,
"xslg": 0.383,
"sweet_spot_percent": 27.1,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 48.6,
"exit_velocity_avg": 91.7,
"launch_angle_avg": 19.5,
"whiff_percent": 29.7,
"swing_percent": 46.0
},
"components": {
"expected_quality": 0.069,
"regression_edge": 0.2286,
"xwoba_edge": -0.3143,
"xba_edge": -0.6,
"xslg_edge": 0.1286,
"barrel_edge": 0.7333,
"hard_hit_edge": 1.3929,
"exit_velocity_edge": 1.16,
"sweet_spot_edge": -1.0333,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "2B",
"player_id": "702616",
"player_name": "Jackson Holliday",
"offense_factor": 1.0191,
"quality_score": 0.2546,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702616",
"espn_id": 5080633,
"player_name": "Jackson Holliday",
"team": "BAL",
"role": "batter",
"espn_rank": 220,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 220,
"gp_value": 17.0,
"gp_rank": "409",
"ab_value": 49.0,
"ab_rank": "398",
"r_value": 9.0,
"r_rank": "333",
"h_value": 11.0,
"h_rank": "384",
"avg_value": 0.2244897,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 6.0,
"rbi_rank": "364",
"tb_value": 20.0,
"tb_rank": "1727",
"bb_value": 8.0,
"bb_rank": "293",
"so_value": 16.0,
"so_rank": "370",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.3275862,
"obp_rank": "-",
"slg_value": 0.4081632,
"slg_rank": "-",
"ops_value": 0.7357494,
"ops_rank": null,
"war_value": 0.36,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 25.0,
"k_percent": 27.6,
"bb_percent": 13.8,
"woba": 0.326,
"xwoba": 0.338,
"xba": 0.235,
"xslg": 0.407,
"sweet_spot_percent": 44.1,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 41.2,
"exit_velocity_avg": 89.3,
"launch_angle_avg": 16.8,
"whiff_percent": 31.1,
"swing_percent": 42.6
},
"components": {
"expected_quality": 0.6022,
"regression_edge": 0.3429,
"xwoba_edge": 0.9429,
"xba_edge": -0.1143,
"xslg_edge": 0.4714,
"barrel_edge": 0.4,
"hard_hit_edge": 0.3357,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": 1.8,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "677942",
"player_name": "Blaze Alexander",
"offense_factor": 1.0325,
"quality_score": 0.4338,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677942",
"espn_id": 41345,
"player_name": "Blaze Alexander",
"team": "BAL",
"role": "batter",
"espn_rank": 246,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 246,
"gp_value": 55.0,
"gp_rank": "164",
"ab_value": 137.0,
"ab_rank": "228",
"r_value": 17.0,
"r_rank": "217",
"h_value": 38.0,
"h_rank": "184",
"avg_value": 0.2773722,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": "163",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 17.0,
"rbi_rank": "216",
"tb_value": 54.0,
"tb_rank": "1279",
"bb_value": 10.0,
"bb_rank": "261",
"so_value": 38.0,
"so_rank": "177",
"sb_value": 7.0,
"sb_rank": "52",
"obp_value": 0.328859,
"obp_rank": "-",
"slg_value": 0.3941605,
"slg_rank": "-",
"ops_value": 0.7230195,
"ops_rank": null,
"war_value": 0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 126.0,
"k_percent": 25.0,
"bb_percent": 6.6,
"woba": 0.319,
"xwoba": 0.338,
"xba": 0.296,
"xslg": 0.431,
"sweet_spot_percent": 42.2,
"barrel_batted_rate": 4.9,
"hard_hit_percent": 46.1,
"exit_velocity_avg": 92.3,
"launch_angle_avg": 9.8,
"whiff_percent": 28.8,
"swing_percent": 56.0
},
"components": {
"expected_quality": 0.7924,
"regression_edge": 0.5429,
"xwoba_edge": 0.9429,
"xba_edge": 1.6286,
"xslg_edge": 0.8143,
"barrel_edge": -0.4667,
"hard_hit_edge": 1.0357,
"exit_velocity_edge": 1.4,
"sweet_spot_edge": 1.4833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "669087",
"player_name": "Sam Huff",
"offense_factor": 0.9609,
"quality_score": -0.5219,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "669087",
"espn_id": 40798,
"player_name": "Sam Huff",
"team": "BAL",
"role": "batter",
"espn_rank": 343,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 343,
"gp_value": 4.0,
"gp_rank": "518",
"ab_value": 9.0,
"ab_rank": "512",
"r_value": 1.0,
"r_rank": "484",
"h_value": 2.0,
"h_rank": "489",
"avg_value": 0.2222222,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 1.0,
"rbi_rank": "476",
"tb_value": 3.0,
"tb_rank": "2514",
"bb_value": 0.0,
"bb_rank": "503",
"so_value": 5.0,
"so_rank": "483",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2222222,
"obp_rank": "-",
"slg_value": 0.3333333,
"slg_rank": "-",
"ops_value": 0.5555555,
"ops_rank": null,
"war_value": -0.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 5.0,
"k_percent": 55.6,
"bb_percent": 0.0,
"woba": 0.241,
"xwoba": 0.132,
"xba": 0.106,
"xslg": 0.209,
"sweet_spot_percent": 25.0,
"barrel_batted_rate": 25.0,
"hard_hit_percent": 75.0,
"exit_velocity_avg": 100.2,
"launch_angle_avg": 22.5,
"whiff_percent": 45.5,
"swing_percent": 57.9
},
"components": {
"expected_quality": -1.023,
"regression_edge": -2.0,
"xwoba_edge": -2.5,
"xba_edge": -2.5,
"xslg_edge": -2.3571,
"barrel_edge": 2.5,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.5,
"sweet_spot_edge": -1.3833,
"launch_angle_hr_bonus": 0.45
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0387,
"raw_average_factor": 1.0387,
"team_espn_average_rank": 197.67,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "CF",
"player_id": "677594",
"player_name": "Julio Rodríguez",
"offense_factor": 1.0483,
"quality_score": 0.6437,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677594",
"espn_id": 41044,
"player_name": "Julio Rodriguez",
"team": "SEA",
"role": "batter",
"espn_rank": 52,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 52,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 267.0,
"ab_rank": "2",
"r_value": 36.0,
"r_rank": "50",
"h_value": 69.0,
"h_rank": "16",
"avg_value": 0.2584269,
"avg_rank": 67.0,
"2b_value": 14.0,
"2b_rank": "26",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 13.0,
"hr_rank": "26",
"rbi_value": 32.0,
"rbi_rank": "62",
"tb_value": 122.0,
"tb_rank": "474",
"bb_value": 21.0,
"bb_rank": "108",
"so_value": 62.0,
"so_rank": "49",
"sb_value": 9.0,
"sb_rank": "37",
"obp_value": 0.3161512,
"obp_rank": "115",
"slg_value": 0.4569288,
"slg_rank": "48",
"ops_value": 0.77308,
"ops_rank": 72.0,
"war_value": 1.7,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 244.0,
"k_percent": 21.3,
"bb_percent": 7.2,
"woba": 0.338,
"xwoba": 0.338,
"xba": 0.262,
"xslg": 0.463,
"sweet_spot_percent": 30.6,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 43.7,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 13.0,
"whiff_percent": 27.4,
"swing_percent": 53.2
},
"components": {
"expected_quality": 0.7484,
"regression_edge": 0.0,
"xwoba_edge": 0.9429,
"xba_edge": 0.6571,
"xslg_edge": 1.2714,
"barrel_edge": 0.4889,
"hard_hit_edge": 0.6929,
"exit_velocity_edge": 0.6,
"sweet_spot_edge": -0.45,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "702284",
"player_name": "Cole Young",
"offense_factor": 1.0284,
"quality_score": 0.379,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702284",
"espn_id": 5080641,
"player_name": "Cole Young",
"team": "SEA",
"role": "batter",
"espn_rank": 30,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 30,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 233.0,
"ab_rank": "57",
"r_value": 27.0,
"r_rank": "111",
"h_value": 59.0,
"h_rank": "68",
"avg_value": 0.2532188,
"avg_rank": 81.0,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 31.0,
"rbi_rank": "68",
"tb_value": 83.0,
"tb_rank": "823",
"bb_value": 20.0,
"bb_rank": "123",
"so_value": 52.0,
"so_rank": "87",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3244274,
"obp_rank": "101",
"slg_value": 0.3562231,
"slg_rank": "137",
"ops_value": 0.6806505,
"ops_rank": 125.0,
"war_value": 2.32,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 220.0,
"k_percent": 19.8,
"bb_percent": 7.6,
"woba": 0.307,
"xwoba": 0.329,
"xba": 0.269,
"xslg": 0.406,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 36.8,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 17.1,
"whiff_percent": 22.7,
"swing_percent": 47.5
},
"components": {
"expected_quality": 0.3384,
"regression_edge": 0.6286,
"xwoba_edge": 0.6857,
"xba_edge": 0.8571,
"xslg_edge": 0.4571,
"barrel_edge": -0.3556,
"hard_hit_edge": -0.2929,
"exit_velocity_edge": -0.52,
"sweet_spot_edge": 0.5833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "668227",
"player_name": "Randy Arozarena",
"offense_factor": 1.0519,
"quality_score": 0.6917,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668227",
"espn_id": 36488,
"player_name": "Randy Arozarena",
"team": "SEA",
"role": "batter",
"espn_rank": 20,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 20,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 242.0,
"ab_rank": "27",
"r_value": 43.0,
"r_rank": "12",
"h_value": 69.0,
"h_rank": "16",
"avg_value": 0.2851239,
"avg_rank": 28.0,
"2b_value": 18.0,
"2b_rank": "4",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 29.0,
"rbi_rank": "89",
"tb_value": 107.0,
"tb_rank": "505",
"bb_value": 27.0,
"bb_rank": "55",
"so_value": 63.0,
"so_rank": "46",
"sb_value": 18.0,
"sb_rank": "5",
"obp_value": 0.3758865,
"obp_rank": "22",
"slg_value": 0.4421487,
"slg_rank": "65",
"ops_value": 0.8180352,
"ops_rank": 46.0,
"war_value": 2.55,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 236.0,
"k_percent": 22.3,
"bb_percent": 9.6,
"woba": 0.364,
"xwoba": 0.353,
"xba": 0.268,
"xslg": 0.425,
"sweet_spot_percent": 38.5,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 42.3,
"exit_velocity_avg": 91.5,
"launch_angle_avg": 7.9,
"whiff_percent": 27.2,
"swing_percent": 47.7
},
"components": {
"expected_quality": 0.8554,
"regression_edge": -0.3143,
"xwoba_edge": 1.3714,
"xba_edge": 0.8286,
"xslg_edge": 0.7286,
"barrel_edge": 0.1556,
"hard_hit_edge": 0.4929,
"exit_velocity_edge": 1.08,
"sweet_spot_edge": 0.8667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "647304",
"player_name": "Josh Naylor",
"offense_factor": 1.0292,
"quality_score": 0.3892,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "647304",
"espn_id": 35066,
"player_name": "Josh Naylor",
"team": "SEA",
"role": "batter",
"espn_rank": 383,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 383,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 241.0,
"ab_rank": "29",
"r_value": 24.0,
"r_rank": "145",
"h_value": 62.0,
"h_rank": "47",
"avg_value": 0.2572614,
"avg_rank": 70.0,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 6.0,
"hr_rank": "123",
"rbi_value": 26.0,
"rbi_rank": "117",
"tb_value": 87.0,
"tb_rank": "957",
"bb_value": 21.0,
"bb_rank": "108",
"so_value": 36.0,
"so_rank": "192",
"sb_value": 12.0,
"sb_rank": "16",
"obp_value": 0.3207547,
"obp_rank": "107",
"slg_value": 0.3609958,
"slg_rank": "132",
"ops_value": 0.6817505,
"ops_rank": 124.0,
"war_value": -0.09,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 13.5,
"bb_percent": 7.9,
"woba": 0.304,
"xwoba": 0.327,
"xba": 0.276,
"xslg": 0.409,
"sweet_spot_percent": 31.1,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 38.3,
"exit_velocity_avg": 87.8,
"launch_angle_avg": 14.1,
"whiff_percent": 20.5,
"swing_percent": 53.4
},
"components": {
"expected_quality": 0.3456,
"regression_edge": 0.6571,
"xwoba_edge": 0.6286,
"xba_edge": 1.0571,
"xslg_edge": 0.5,
"barrel_edge": -0.3778,
"hard_hit_edge": -0.0786,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": -0.3667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "670042",
"player_name": "Luke Raley",
"offense_factor": 1.072,
"quality_score": 0.96,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670042",
"espn_id": 40422,
"player_name": "Luke Raley",
"team": "SEA",
"role": "batter",
"espn_rank": 135,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 135,
"gp_value": 60.0,
"gp_rank": "110",
"ab_value": 170.0,
"ab_rank": "177",
"r_value": 22.0,
"r_rank": "168",
"h_value": 44.0,
"h_rank": "153",
"avg_value": 0.2588235,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": "214",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 13.0,
"hr_rank": "26",
"rbi_value": 31.0,
"rbi_rank": "68",
"tb_value": 91.0,
"tb_rank": "561",
"bb_value": 9.0,
"bb_rank": "280",
"so_value": 62.0,
"so_rank": "49",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3189189,
"obp_rank": "-",
"slg_value": 0.5352941,
"slg_rank": "-",
"ops_value": 0.854213,
"ops_rank": null,
"war_value": 0.88,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 150.0,
"k_percent": 33.2,
"bb_percent": 4.8,
"woba": 0.368,
"xwoba": 0.374,
"xba": 0.265,
"xslg": 0.554,
"sweet_spot_percent": 40.0,
"barrel_batted_rate": 19.1,
"hard_hit_percent": 46.4,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 15.8,
"whiff_percent": 42.1,
"swing_percent": 54.4
},
"components": {
"expected_quality": 1.6093,
"regression_edge": 0.1714,
"xwoba_edge": 1.9714,
"xba_edge": 0.7429,
"xslg_edge": 2.5,
"barrel_edge": 2.5,
"hard_hit_edge": 1.0786,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": 1.1167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "686527",
"player_name": "Dominic Canzone",
"offense_factor": 1.0667,
"quality_score": 0.889,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686527",
"espn_id": 4345621,
"player_name": "Dominic Canzone",
"team": "SEA",
"role": "batter",
"espn_rank": 123,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 123,
"gp_value": 57.0,
"gp_rank": "152",
"ab_value": 140.0,
"ab_rank": "220",
"r_value": 21.0,
"r_rank": "180",
"h_value": 38.0,
"h_rank": "184",
"avg_value": 0.2714285,
"avg_rank": null,
"2b_value": 11.0,
"2b_rank": "74",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 73.0,
"tb_rank": "840",
"bb_value": 13.0,
"bb_rank": "212",
"so_value": 34.0,
"so_rank": "208",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.3375796,
"obp_rank": "-",
"slg_value": 0.5214285,
"slg_rank": "-",
"ops_value": 0.8590081,
"ops_rank": null,
"war_value": 0.94,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 124.0,
"k_percent": 21.7,
"bb_percent": 8.3,
"woba": 0.371,
"xwoba": 0.377,
"xba": 0.286,
"xslg": 0.53,
"sweet_spot_percent": 38.9,
"barrel_batted_rate": 16.7,
"hard_hit_percent": 50.0,
"exit_velocity_avg": 93.6,
"launch_angle_avg": 13.3,
"whiff_percent": 29.8,
"swing_percent": 46.3
},
"components": {
"expected_quality": 1.8061,
"regression_edge": 0.1714,
"xwoba_edge": 2.0571,
"xba_edge": 1.3429,
"xslg_edge": 2.2286,
"barrel_edge": 2.1556,
"hard_hit_edge": 1.5929,
"exit_velocity_edge": 1.92,
"sweet_spot_edge": 0.9333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "621550",
"player_name": "Patrick Wisdom",
"offense_factor": 0.9969,
"quality_score": -0.0411,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "621550",
"espn_id": 32861,
"player_name": "Patrick Wisdom",
"team": "SEA",
"role": "batter",
"espn_rank": 420,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 420,
"gp_value": 10.0,
"gp_rank": "470",
"ab_value": 28.0,
"ab_rank": "449",
"r_value": 2.0,
"r_rank": "455",
"h_value": 4.0,
"h_rank": "463",
"avg_value": 0.1428571,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 4.0,
"rbi_rank": "409",
"tb_value": 8.0,
"tb_rank": "2239",
"bb_value": 2.0,
"bb_rank": "429",
"so_value": 13.0,
"so_rank": "395",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2,
"obp_rank": "-",
"slg_value": 0.2857142,
"slg_rank": "-",
"ops_value": 0.4857142,
"ops_rank": null,
"war_value": -0.16,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 8.0,
"k_percent": 43.3,
"bb_percent": 6.7,
"woba": 0.201,
"xwoba": 0.243,
"xba": 0.182,
"xslg": 0.355,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 20.0,
"hard_hit_percent": 53.3,
"exit_velocity_avg": 92.5,
"launch_angle_avg": 24.7,
"whiff_percent": 45.2,
"swing_percent": 54.9
},
"components": {
"expected_quality": -0.3015,
"regression_edge": 1.2,
"xwoba_edge": -1.7714,
"xba_edge": -1.6286,
"xslg_edge": -0.2714,
"barrel_edge": 2.5,
"hard_hit_edge": 2.0643,
"exit_velocity_edge": 1.48,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "C",
"player_id": "640902",
"player_name": "Jhonny Pereda",
"offense_factor": 1.0476,
"quality_score": 0.6352,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "640902",
"espn_id": 40702,
"player_name": "Jhonny Pereda",
"team": "SEA",
"role": "batter",
"espn_rank": 244,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 244,
"gp_value": 15.0,
"gp_rank": "422",
"ab_value": 48.0,
"ab_rank": "399",
"r_value": 6.0,
"r_rank": "382",
"h_value": 14.0,
"h_rank": "367",
"avg_value": 0.2916666,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 4.0,
"rbi_rank": "409",
"tb_value": 20.0,
"tb_rank": "2006",
"bb_value": 4.0,
"bb_rank": "385",
"so_value": 7.0,
"so_rank": "451",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3584905,
"obp_rank": "-",
"slg_value": 0.4166666,
"slg_rank": "-",
"ops_value": 0.7751571,
"ops_rank": null,
"war_value": 0.26,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 28.0,
"k_percent": 13.2,
"bb_percent": 7.5,
"woba": 0.348,
"xwoba": 0.38,
"xba": 0.335,
"xslg": 0.465,
"sweet_spot_percent": 48.8,
"barrel_batted_rate": 4.9,
"hard_hit_percent": 48.8,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 13.1,
"whiff_percent": 17.3,
"swing_percent": 47.8
},
"components": {
"expected_quality": 1.4926,
"regression_edge": 0.9143,
"xwoba_edge": 2.1429,
"xba_edge": 2.5,
"xslg_edge": 1.3,
"barrel_edge": -0.4667,
"hard_hit_edge": 1.4214,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": 2.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "669208",
"player_name": "Ryan Bliss",
"offense_factor": 1.0069,
"quality_score": 0.0914,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669208",
"espn_id": 4414241,
"player_name": "Ryan Bliss",
"team": "SEA",
"role": "batter",
"espn_rank": 372,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 372,
"gp_value": 1.0,
"gp_rank": "540",
"ab_value": 2.0,
"ab_rank": "539",
"r_value": 0.0,
"r_rank": "516",
"h_value": 0.0,
"h_rank": "531",
"avg_value": 0.0,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": "469",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 0.0,
"rbi_rank": "501",
"tb_value": 0.0,
"tb_rank": "2614",
"bb_value": 0.0,
"bb_rank": "503",
"so_value": 2.0,
"so_rank": "512",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.0,
"obp_rank": "-",
"slg_value": 0.0,
"slg_rank": "-",
"ops_value": 0.0,
"ops_rank": null,
"war_value": -0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 21.6,
"bb_percent": 8.8,
"woba": 0.315,
"xwoba": 0.315,
"xba": 0.246,
"xslg": 0.394,
"sweet_spot_percent": 33.5,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 40.2,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 14.1,
"whiff_percent": 24.9,
"swing_percent": 47.3
},
"components": {
"expected_quality": 0.2363,
"regression_edge": 0.0,
"xwoba_edge": 0.2857,
"xba_edge": 0.2,
"xslg_edge": 0.2857,
"barrel_edge": 0.1556,
"hard_hit_edge": 0.1929,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 0.0333,
"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 SEA | True | 36 | -0.1405 | 0.9080 | 1.0119 | 1.0031 | 0.9346 | 1.0864 | negative_pitcher_regression | 0.3210 | 0.2750 | 25.80 | 5.50 | 23.50 | 10.50 | 43.70 | |
| Home BAL | 694346 | False | - | - | - | - | - | - | - | pitcher_not_in_embedded_savant_pitcher_profile | - | - | - | - | - | - | - |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away SEA | True | None | 93 | 89.53 | 2375 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0102 | |
| Home BAL | 694346 | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1 |
| home_runs_vs_away_pitcher | 1.0108 |
| home_pitcher_quality_edge | 0.1405 |
{
"applied": true,
"home_pitcher": {
"available": false,
"pitcher_id": "694346",
"reason": "pitcher_not_in_embedded_savant_pitcher_profile"
},
"away_pitcher": {
"available": true,
"pitcher_id": "676106",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 227.0,
"k_percent": 25.8,
"bb_percent": 5.5,
"woba": 0.275,
"xwoba": 0.321,
"sweet_spot_percent": 32.2,
"barrel_batted_rate": 10.5,
"hard_hit_percent": 43.7,
"avg_best_speed": 78.95,
"avg_hyper_speed": 94.8429,
"whiff_percent": 23.5,
"swing_percent": 52.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1568,
"command_and_miss": 0.2514,
"regression_edge": -1.3143,
"xwoba_edge": -0.1857,
"barrel_edge": -0.7556,
"hard_hit_edge": -0.7286,
"whiff_edge": -0.3286,
"bb_edge": 0.9,
"pitch_design_score": -0.0102
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676106",
"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": 89.52837287640946,
"release_spin_rate": 2374.585703204467,
"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": 89.52837287640946,
"release_spin_rate": 2374.585703204467,
"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.5284,
"release_spin_rate": 2374.5857,
"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.0102,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0727,
"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.1405,
"sample_weight": 0.908,
"run_prevention_factor": 1.0119,
"strikeout_factor": 1.0031,
"walk_factor": 0.9346,
"homer_factor": 1.0864,
"woba_minus_xwoba": -0.046,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "676106",
"espn_id": 4297897,
"player_name": "Emerson Hancock",
"team": "SEA",
"role": "pitcher",
"espn_rank": 36,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 36,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 8.0,
"qs_rank": 8,
"era_value": 2.8018,
"era_rank": 14.0,
"w_value": 4.0,
"w_rank": 52,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 70.2,
"ip_rank": 39,
"h_value": 52.0,
"h_rank": 101,
"er_value": 22.0,
"er_rank": 114,
"hr_value": 10.0,
"hr_rank": 39,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 70.0,
"k_rank": 35,
"k_per_9_value": 8.915094,
"k_per_9_rank": 24,
"whip_value": 0.9481,
"whip_rank": 6.0,
"war_value": 1.64,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0,
"home_runs_vs_away_pitcher": 1.0108,
"home_pitcher_quality_edge": 0.1405
},
"score_before": {
"away_runs": 3.6431,
"home_runs": 1.2717
},
"score_after": {
"away_runs": 3.6431,
"home_runs": 1.2854,
"home_win_probability": 0.3021
},
"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 SEA | 22-35 | 0.386 | 1.30 | 2.90 | -89 | cold | strong | |
| Home BAL | 11-51 | 0.177 | 1.20 | 3.60 | -148 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away SEA | 34-32 | 0.515 | 29 | 0.439 | True |
| Home BAL | 31-35 | 0.470 | -31 | -0.470 | True |
| Signal | - | - | -0.909 | -0.977 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target SEA | - | - | 3 | - | - | - | - |
| Game target BAL | - | - | 1 | - | - | - | - |
| Player finalized SEA | 45 | 13 | 7 | 0 | 6 | 3 | 12 |
| Player finalized BAL | 50 | 12 | 9 | 0 | 7 | 6 | 14 |
| Player model fractional SEA | 46.93 | 11.51 | 5.98 | 1.65 | 5.63 | 3.65 | 12.38 |
| Player model fractional BAL | 50.49 | 11.58 | 6.94 | 1.68 | 6.04 | 5.38 | 15.05 |
| Simulation box SEA | 36 | 9 | 4 | 0 | 4 | 4 | 7 |
| Simulation box BAL | 30 | 3 | 1 | 1 | 1 | 3 | 14 |
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 SEA | Starter | Emerson Hancock | 6 | 0 | 7 | 1 | 1 | 3.47 | 1.07 | True |
| Away SEA | Middle Reliever | Andrés Muñoz | 1 | 0 | 3 | 0 | 0 | 5.26 | 1.38 | True |
| Away SEA | Middle Reliever | José A. Ferrer | 1 | 0 | 1 | 1 | 0 | 2.41 | 1.23 | True |
| Away SEA | Middle Reliever | Matt Brash | 1 | 1 | 3 | 1 | 2 | 3.18 | 1.30 | True |
| Home BAL | Starter | Trey Gibson | 3 | 1 | 4 | 5 | 2 | 4.36 | 1.32 | True |
| Home BAL | Middle Reliever | Andrew Kittredge | 1.20 | 3 | 0 | 4 | 2 | 4.06 | 1.20 | True |
| Home BAL | Middle Reliever | Anthony Nunez | 1.10 | 0 | 1 | 0 | 0 | 5.05 | 1.43 | True |
| Home BAL | Middle Reliever | Rico Garcia | 1.20 | 0 | 1 | 0 | 0 | 2.95 | 1.09 | True |
| Home BAL | Middle Reliever | Yennier Cano | 1.10 | 0 | 1 | 0 | 0 | 4.74 | 1.28 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | BAL | pitcher | Starter | Trey Gibson | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 2.9000 | boost | better |
| away | SEA | batter | 2B | Ryan Bliss | better | 8 | 4 | 4 | 5 | 3 | predicted_H | 1.8100 | boost | better |
| away | SEA | batter | DH | Dominic Canzone | worse | 9 | 3 | 6 | 2 | 7 | predicted_BB | 1.7310 | boost | better |
| home | BAL | batter | RF | Leody Taveras | worse | 10 | 4 | 6 | 3 | 7 | predicted_H | 1.7000 | boost | better |
| away | SEA | batter | RF | Luke Raley | better | 11 | 5 | 6 | 6 | 5 | predicted_AB | 1.5590 | boost | better |
| away | SEA | batter | LF | Randy Arozarena | better | 10 | 8 | 2 | 7 | 3 | predicted_RBI | 1.5200 | boost | better |
| home | BAL | batter | 3B | Coby Mayo | worse | 11 | 3 | 8 | 2 | 9 | predicted_AB | -1.3310 | deboost | worse |
| home | BAL | batter | SS | Blaze Alexander | worse | 10 | 1 | 9 | 1 | 9 | predicted_AB | -1.3010 | deboost | worse |
| away | SEA | batter | 3B | Patrick Wisdom | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -1.2670 | deboost | better |
| home | BAL | batter | LF | Taylor Ward | worse | 10 | 4 | 6 | 3 | 7 | predicted_AB | -1.2600 | deboost | worse |
| home | BAL | batter | CF | Colton Cowser | worse | 10 | 1 | 9 | 2 | 8 | predicted_AB | 1.1670 | boost | better |
| home | BAL | batter | DH | Gunnar Henderson | worse | 10 | 1 | 9 | 0 | 10 | predicted_H | -1.0500 | deboost | worse |
| home | BAL | batter | 1B | Pete Alonso | worse | 10 | 2 | 8 | 1 | 9 | predicted_H | -1.0200 | deboost | worse |
| home | BAL | batter | 2B | Jackson Holliday | better | 9 | 6 | 3 | 5 | 4 | predicted_SO | 0.9710 | boost | worse |
| away | SEA | batter | 1B | Josh Naylor | better | 9 | 4 | 5 | 5 | 4 | predicted_H | 0.9300 | boost | better |
| away | SEA | batter | C | Jhonny Pereda | worse | 10 | 0 | 10 | 1 | 9 | predicted_H | -0.8100 | deboost | worse |
| away | SEA | batter | CF | Julio Rodríguez | worse | 10 | 4 | 6 | 3 | 7 | predicted_BB | 0.6800 | boost | better |
| home | BAL | batter | C | Sam Huff | worse | 10 | 1 | 9 | 0 | 10 | predicted_AB | -0.6670 | deboost | worse |
| away | SEA | batter | SS | Cole Young | worse | 10 | 3 | 7 | 2 | 8 | predicted_BB | 0.6570 | boost | better |
| home | BAL | pitcher | Middle Reliever | Yennier Cano | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.4333 | boost | better |
| home | BAL | pitcher | Middle Reliever | Andrew Kittredge | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
| home | BAL | pitcher | Middle Reliever | Rico Garcia | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
| home | BAL | pitcher | Middle Reliever | Anthony Nunez | 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 | Emerson Hancock |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1405 |
| ESPN Rank | 36 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0102 |
| Avg Velo | 89.5284 |
| Avg Spin | 2374.5857 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 7 |
| Season ERA | 2.8019 |
| Season WHIP | 0.9481 |
| Role Avg IP | 5.8890 |
| Recent Avg IP | 5.8000 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"opponent": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"edges": {
"quality_edge": 0.2032,
"offense_edge": -0.0094,
"opponent_offense_edge": 0.0195,
"defense_strength": 0.1379,
"opponent_defense_weakness": 0.0708,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0115,
"run_prevention": 0.9792,
"strikeout": 1.0045
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676106",
"profile": {
"available": true,
"pitcher_id": "676106",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 227.0,
"k_percent": 25.8,
"bb_percent": 5.5,
"woba": 0.275,
"xwoba": 0.321,
"sweet_spot_percent": 32.2,
"barrel_batted_rate": 10.5,
"hard_hit_percent": 43.7,
"avg_best_speed": 78.95,
"avg_hyper_speed": 94.8429,
"whiff_percent": 23.5,
"swing_percent": 52.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1568,
"command_and_miss": 0.2514,
"regression_edge": -1.3143,
"xwoba_edge": -0.1857,
"barrel_edge": -0.7556,
"hard_hit_edge": -0.7286,
"whiff_edge": -0.3286,
"bb_edge": 0.9,
"pitch_design_score": -0.0102
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676106",
"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": 89.52837287640946,
"release_spin_rate": 2374.585703204467,
"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": 89.52837287640946,
"release_spin_rate": 2374.585703204467,
"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.5284,
"release_spin_rate": 2374.5857,
"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.0102,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0727,
"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.1405,
"sample_weight": 0.908,
"run_prevention_factor": 1.0119,
"strikeout_factor": 1.0031,
"walk_factor": 0.9346,
"homer_factor": 1.0864,
"woba_minus_xwoba": -0.046,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "676106",
"espn_id": 4297897,
"player_name": "Emerson Hancock",
"team": "SEA",
"role": "pitcher",
"espn_rank": 36,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 36,
"gp_value": 12.0,
"gp_rank": 297,
"gs_value": 12.0,
"gs_rank": 54,
"qs_value": 8.0,
"qs_rank": 8,
"era_value": 2.8018,
"era_rank": 14.0,
"w_value": 4.0,
"w_rank": 52,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 70.2,
"ip_rank": 39,
"h_value": 52.0,
"h_rank": 101,
"er_value": 22.0,
"er_rank": 114,
"hr_value": 10.0,
"hr_rank": 39,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 70.0,
"k_rank": 35,
"k_per_9_value": 8.915094,
"k_per_9_rank": 24,
"whip_value": 0.9481,
"whip_rank": 6.0,
"war_value": 1.64,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0108,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.0108,
"adjusted": 4
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9406,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0785,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0028,
"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": 58.0,
"ER": 21,
"H": 46,
"BB": 14,
"SO": 56,
"HR": 9,
"ERA": 3.2586206896551726,
"WHIP": 1.0344827586206897,
"K9": 8.689655172413794,
"HR9": 1.396551724137931,
"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-01T00:00:00"
}{
"available": true,
"pitcher_id": "676106",
"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": 89.52837287640946,
"release_spin_rate": 2374.585703204467,
"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": 89.52837287640946,
"release_spin_rate": 2374.585703204467,
"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.5284,
"release_spin_rate": 2374.5857,
"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.0102,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0727,
"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": "676106",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 29.0,
"ER": 10.0,
"R": 10.0,
"H": 18.0,
"BB": 9.0,
"SO": 24.0,
"HR": 3.0,
"BF": 112.0,
"Pitches": 449.0
},
"per_game": {
"IP": 5.2,
"ER": 2.0,
"R": 2.0,
"H": 3.6,
"BB": 1.8,
"SO": 4.8,
"HR": 0.6,
"BF": 22.4,
"Pitches": 89.8
},
"rates": {
"ERA": 3.1034,
"WHIP": 0.931,
"ER_per_IP": 0.34483,
"H_per_IP": 0.62069,
"BB_per_IP": 0.31034,
"SO_per_IP": 0.82759,
"HR_per_IP": 0.10345
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 58.0,
"ER": 21.0,
"R": 21.0,
"H": 46.0,
"BB": 14.0,
"SO": 56.0,
"HR": 9.0,
"BF": 228.0,
"Pitches": 917.0
},
"per_game": {
"IP": 5.2,
"ER": 2.1,
"R": 2.1,
"H": 4.6,
"BB": 1.4,
"SO": 5.6,
"HR": 0.9,
"BF": 22.8,
"Pitches": 91.7
},
"rates": {
"ERA": 3.2586,
"WHIP": 1.0345,
"ER_per_IP": 0.36207,
"H_per_IP": 0.7931,
"BB_per_IP": 0.24138,
"SO_per_IP": 0.96552,
"HR_per_IP": 0.15517
}
},
"season": {
"games": 12,
"totals": {
"IP": 70.2,
"ER": 22.0,
"R": 22.0,
"H": 52.0,
"BB": 15.0,
"SO": 70.0,
"HR": 10.0,
"BF": 271.0,
"Pitches": 1096.0
},
"per_game": {
"IP": 6.0,
"ER": 1.8333,
"R": 1.8333,
"H": 4.3333,
"BB": 1.25,
"SO": 5.8333,
"HR": 0.8333,
"BF": 22.5833,
"Pitches": 91.3333
},
"rates": {
"ERA": 2.8019,
"WHIP": 0.9481,
"ER_per_IP": 0.31132,
"H_per_IP": 0.73585,
"BB_per_IP": 0.21226,
"SO_per_IP": 0.99057,
"HR_per_IP": 0.14151
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.241,
"predicted_H": 4.525,
"predicted_BB": 1.717,
"predicted_SO": 5.324,
"predicted_HR": 0.768,
"predicted_ERA": 3.4697,
"predicted_WHIP": 1.074
}
}{
"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": 6.0,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 2.241,
"final": 1.1782,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 4.525,
"final": 2.8532,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.717,
"final": 1.377,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 7.0,
"form": 5.324,
"final": 6.1189,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.768,
"final": 0.4038,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4697,
"final": 3.4697,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.074,
"final": 1.074,
"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.0267 |
| ESPN Rank | 644 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0784 |
| Avg Velo | 91.1095 |
| Avg Spin | 2282.5709 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 3 |
| Season ERA | 5.4000 |
| Season WHIP | 1.3714 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"opponent": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"edges": {
"quality_edge": 0.2032,
"offense_edge": -0.0094,
"opponent_offense_edge": 0.0195,
"defense_strength": 0.1379,
"opponent_defense_weakness": 0.0708,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0115,
"run_prevention": 0.9792,
"strikeout": 1.0045
},
"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.7,
"bb_percent": 8.7,
"woba": 0.318,
"xwoba": 0.332,
"sweet_spot_percent": 33.9,
"barrel_batted_rate": 11.9,
"hard_hit_percent": 47.5,
"avg_best_speed": 76.3227,
"avg_hyper_speed": 95.2121,
"whiff_percent": 42.0,
"swing_percent": 46.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.5416,
"command_and_miss": 1.5243,
"regression_edge": -0.4,
"xwoba_edge": -0.5,
"barrel_edge": -1.0667,
"hard_hit_edge": -1.2714,
"whiff_edge": 2.3143,
"bb_edge": 0.1,
"pitch_design_score": 0.0784
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "662253",
"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": 91.10945972430521,
"release_spin_rate": 2282.5708941903267,
"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": 91.10945972430521,
"release_spin_rate": 2282.5708941903267,
"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.1095,
"release_spin_rate": 2282.5709,
"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.0784,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5597,
"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.0267,
"sample_weight": 0.45,
"run_prevention_factor": 0.9977,
"strikeout_factor": 1.0694,
"walk_factor": 0.9964,
"homer_factor": 1.068,
"woba_minus_xwoba": -0.014,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "662253",
"espn_id": 40939,
"player_name": "Andres Munoz",
"team": "SEA",
"role": "pitcher",
"espn_rank": 644,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 644,
"gp_value": 25.0,
"gp_rank": 92,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.4,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 4.0,
"l_rank": 45,
"sv_value": 9.0,
"sv_rank": 13,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 23.1,
"ip_rank": 308,
"h_value": 23.0,
"h_rank": 252,
"er_value": 14.0,
"er_rank": 195,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 9.0,
"bb_rank": 298,
"k_value": 35.0,
"k_rank": 165,
"k_per_9_value": 13.500001,
"k_per_9_rank": 14,
"whip_value": 1.3714,
"whip_rank": null,
"war_value": -0.61,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.999,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.999,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9984,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0306,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0312,
"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": 10,
"BB": 3,
"SO": 12,
"HR": 2,
"ERA": 4.821428571428572,
"WHIP": 1.392857142857143,
"K9": 11.571428571428573,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "662253",
"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": 91.10945972430521,
"release_spin_rate": 2282.5708941903267,
"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": 91.10945972430521,
"release_spin_rate": 2282.5708941903267,
"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.1095,
"release_spin_rate": 2282.5709,
"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.0784,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5597,
"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.608,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4796,
"prior_weight": 0.5204
},
"role": "pitcher",
"player_id": "662253",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 4.0,
"R": 4.0,
"H": 5.0,
"BB": 2.0,
"SO": 3.0,
"HR": 1.0,
"BF": 23.0,
"Pitches": 91.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.0,
"BB": 0.4,
"SO": 0.6,
"HR": 0.2,
"BF": 4.6,
"Pitches": 18.2
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.5,
"ER_per_IP": 0.85714,
"H_per_IP": 1.07143,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.64286,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 5.0,
"R": 5.0,
"H": 10.0,
"BB": 3.0,
"SO": 12.0,
"HR": 2.0,
"BF": 43.0,
"Pitches": 163.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 1.0,
"BB": 0.3,
"SO": 1.2,
"HR": 0.2,
"BF": 4.3,
"Pitches": 16.3
},
"rates": {
"ERA": 4.8214,
"WHIP": 1.3929,
"ER_per_IP": 0.53571,
"H_per_IP": 1.07143,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.21429
}
},
"season": {
"games": 25,
"totals": {
"IP": 23.1,
"ER": 14.0,
"R": 15.0,
"H": 23.0,
"BB": 9.0,
"SO": 35.0,
"HR": 4.0,
"BF": 104.0,
"Pitches": 412.0
},
"per_game": {
"IP": 1.0,
"ER": 0.56,
"R": 0.6,
"H": 0.92,
"BB": 0.36,
"SO": 1.4,
"HR": 0.16,
"BF": 4.16,
"Pitches": 16.48
},
"rates": {
"ERA": 5.4,
"WHIP": 1.3714,
"ER_per_IP": 0.6,
"H_per_IP": 0.98571,
"BB_per_IP": 0.38571,
"SO_per_IP": 1.5,
"HR_per_IP": 0.17143
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.585,
"predicted_H": 1.004,
"predicted_BB": 0.373,
"predicted_SO": 0.985,
"predicted_HR": 0.171,
"predicted_ERA": 5.2629,
"predicted_WHIP": 1.377
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5699,
"form_weight": 0.4301,
"form_reliability": 0.4796,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.608,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4796,
"prior_weight": 0.5204
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.585,
"final": 0.2516,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.004,
"final": 0.4319,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.373,
"final": 0.1604,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 0.985,
"final": 2.1333,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.171,
"final": 0.0736,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.2629,
"final": 5.2629,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.377,
"final": 1.377,
"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.3712 |
| ESPN Rank | 97 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2124 |
| Avg Velo | 93.5037 |
| Avg Spin | 2208.0150 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 1.5517 |
| Season WHIP | 1.2069 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"opponent": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"edges": {
"quality_edge": 0.2032,
"offense_edge": -0.0094,
"opponent_offense_edge": 0.0195,
"defense_strength": 0.1379,
"opponent_defense_weakness": 0.0708,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0115,
"run_prevention": 0.9792,
"strikeout": 1.0045
},
"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": 20.2,
"bb_percent": 4.8,
"woba": 0.295,
"xwoba": 0.248,
"sweet_spot_percent": 26.7,
"barrel_batted_rate": 2.2,
"hard_hit_percent": 34.4,
"avg_best_speed": 73.4813,
"avg_hyper_speed": 92.754,
"whiff_percent": 22.6,
"swing_percent": 53.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.2581,
"command_and_miss": -0.1186,
"regression_edge": 1.3429,
"xwoba_edge": 1.9,
"barrel_edge": 1.0889,
"hard_hit_edge": 0.6,
"whiff_edge": -0.4571,
"bb_edge": 1.075,
"pitch_design_score": 0.2124
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "678606",
"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": 93.50369036224606,
"release_spin_rate": 2208.0150065722005,
"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": 93.50369036224606,
"release_spin_rate": 2208.0150065722005,
"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.5037,
"release_spin_rate": 2208.015,
"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.2124,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.5174,
"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.3712,
"sample_weight": 0.45,
"run_prevention_factor": 0.9684,
"strikeout_factor": 0.9848,
"walk_factor": 0.9613,
"homer_factor": 0.9244,
"woba_minus_xwoba": 0.047,
"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": 97,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 97,
"gp_value": 32.0,
"gp_rank": 5,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.5517,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 3.0,
"sv_rank": 41,
"hld_value": 8.0,
"hld_rank": 30,
"ip_value": 29.0,
"ip_rank": 216,
"h_value": 30.0,
"h_rank": 176,
"er_value": 5.0,
"er_rank": 459,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 6.0,
"bb_rank": 402,
"k_value": 25.0,
"k_rank": 270,
"k_per_9_value": 7.7586203,
"k_per_9_rank": 33,
"whip_value": 1.2413,
"whip_rank": null,
"war_value": 0.95,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9858,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9858,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9826,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.966,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9932,
"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": 1,
"H": 5,
"BB": 3,
"SO": 8,
"HR": 1,
"ERA": 1.1250000000000002,
"WHIP": 1.0000000000000002,
"K9": 9.000000000000002,
"HR9": 1.1250000000000002,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "678606",
"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": 93.50369036224606,
"release_spin_rate": 2208.0150065722005,
"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": 93.50369036224606,
"release_spin_rate": 2208.0150065722005,
"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.5037,
"release_spin_rate": 2208.015,
"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.2124,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.5174,
"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.726,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5339,
"prior_weight": 0.4661
},
"role": "pitcher",
"player_id": "678606",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 3.0,
"SO": 3.0,
"HR": 0.0,
"BF": 16.0,
"Pitches": 71.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.6,
"SO": 0.6,
"HR": 0.0,
"BF": 3.2,
"Pitches": 14.2
},
"rates": {
"ERA": 0.0,
"WHIP": 1.25,
"ER_per_IP": 0.0,
"H_per_IP": 0.5,
"BB_per_IP": 0.75,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.0,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 3.0,
"SO": 8.0,
"HR": 1.0,
"BF": 31.0,
"Pitches": 131.0
},
"per_game": {
"IP": 0.2,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.3,
"SO": 0.8,
"HR": 0.1,
"BF": 3.1,
"Pitches": 13.1
},
"rates": {
"ERA": 1.125,
"WHIP": 1.0,
"ER_per_IP": 0.125,
"H_per_IP": 0.625,
"BB_per_IP": 0.375,
"SO_per_IP": 1.0,
"HR_per_IP": 0.125
}
},
"season": {
"games": 31,
"totals": {
"IP": 29.0,
"ER": 5.0,
"R": 6.0,
"H": 29.0,
"BB": 6.0,
"SO": 25.0,
"HR": 1.0,
"BF": 123.0,
"Pitches": 452.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1613,
"R": 0.1935,
"H": 0.9355,
"BB": 0.1935,
"SO": 0.8065,
"HR": 0.0323,
"BF": 3.9677,
"Pitches": 14.5806
},
"rates": {
"ERA": 1.5517,
"WHIP": 1.2069,
"ER_per_IP": 0.17241,
"H_per_IP": 1.0,
"BB_per_IP": 0.2069,
"SO_per_IP": 0.86207,
"HR_per_IP": 0.03448
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.23,
"predicted_H": 0.678,
"predicted_BB": 0.379,
"predicted_SO": 0.767,
"predicted_HR": 0.079,
"predicted_ERA": 2.4097,
"predicted_WHIP": 1.2322
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5469,
"form_weight": 0.4531,
"form_reliability": 0.5339,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.726,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5339,
"prior_weight": 0.4661
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.23,
"final": 0.1042,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.678,
"final": 0.8541,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.379,
"final": 0.1717,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.767,
"final": 0.8944,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.079,
"final": 0.0358,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.4097,
"final": 2.4097,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2322,
"final": 1.2322,
"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 Brash |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0846 |
| ESPN Rank | 119 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0310 |
| Avg Velo | 90.2635 |
| Avg Spin | 2538.9190 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 0.5625 |
| Season WHIP | 0.8125 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"opponent": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"edges": {
"quality_edge": 0.2032,
"offense_edge": -0.0094,
"opponent_offense_edge": 0.0195,
"defense_strength": 0.1379,
"opponent_defense_weakness": 0.0708,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0115,
"run_prevention": 0.9792,
"strikeout": 1.0045
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "666374",
"profile": {
"available": true,
"pitcher_id": "666374",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 41.0,
"k_percent": 23.3,
"bb_percent": 8.3,
"woba": 0.21,
"xwoba": 0.306,
"sweet_spot_percent": 41.0,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 41.0,
"avg_best_speed": 76.9582,
"avg_hyper_speed": 94.5496,
"whiff_percent": 33.0,
"swing_percent": 41.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.4907,
"command_and_miss": 0.4257,
"regression_edge": -2.0,
"xwoba_edge": 0.2429,
"barrel_edge": 0.4444,
"hard_hit_edge": -0.3429,
"whiff_edge": 1.0286,
"bb_edge": 0.2,
"pitch_design_score": 0.031
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "666374",
"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.26350434532787,
"release_spin_rate": 2538.918993033111,
"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.26350434532787,
"release_spin_rate": 2538.918993033111,
"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.2635,
"release_spin_rate": 2538.919,
"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.031,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.2213,
"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.0846,
"sample_weight": 0.45,
"run_prevention_factor": 0.9928,
"strikeout_factor": 1.0195,
"walk_factor": 0.9928,
"homer_factor": 0.9869,
"woba_minus_xwoba": -0.096,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "666374",
"espn_id": 4894467,
"player_name": "Matt Brash",
"team": "SEA",
"role": "pitcher",
"espn_rank": 119,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 119,
"gp_value": 19.0,
"gp_rank": 164,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 0.5625,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 16.0,
"ip_rank": 403,
"h_value": 8.0,
"h_rank": 490,
"er_value": 1.0,
"er_rank": 599,
"hr_value": 0.0,
"hr_rank": 552,
"bb_value": 5.0,
"bb_rank": 443,
"k_value": 14.0,
"k_rank": 395,
"k_per_9_value": 7.875,
"k_per_9_rank": 26,
"whip_value": 0.8125,
"whip_rank": null,
"war_value": 0.82,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9968,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9968,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9968,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9941,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0088,
"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": 1,
"H": 5,
"BB": 3,
"SO": 9,
"HR": 0,
"ERA": 1.0384615384615385,
"WHIP": 0.9230769230769231,
"K9": 9.346153846153847,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "666374",
"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.26350434532787,
"release_spin_rate": 2538.918993033111,
"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.26350434532787,
"release_spin_rate": 2538.918993033111,
"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.2635,
"release_spin_rate": 2538.919,
"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.031,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.2213,
"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.159,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3872,
"prior_weight": 0.6128
},
"role": "pitcher",
"player_id": "666374",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 18,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 3.0,
"SO": 6.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 96.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.6,
"SO": 1.2,
"HR": 0.0,
"BF": 4.4,
"Pitches": 19.2
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.7143,
"ER_per_IP": 0.21429,
"H_per_IP": 1.07143,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 4.0,
"SO": 10.0,
"HR": 0.0,
"BF": 38.0,
"Pitches": 160.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 3.8,
"Pitches": 16.0
},
"rates": {
"ERA": 0.931,
"WHIP": 0.931,
"ER_per_IP": 0.10345,
"H_per_IP": 0.51724,
"BB_per_IP": 0.41379,
"SO_per_IP": 1.03448,
"HR_per_IP": 0.0
}
},
"season": {
"games": 18,
"totals": {
"IP": 16.0,
"ER": 1.0,
"R": 2.0,
"H": 8.0,
"BB": 5.0,
"SO": 14.0,
"HR": 0.0,
"BF": 60.0,
"Pitches": 242.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0556,
"R": 0.1111,
"H": 0.4444,
"BB": 0.2778,
"SO": 0.7778,
"HR": 0.0,
"BF": 3.3333,
"Pitches": 13.4444
},
"rates": {
"ERA": 0.5625,
"WHIP": 0.8125,
"ER_per_IP": 0.0625,
"H_per_IP": 0.5,
"BB_per_IP": 0.3125,
"SO_per_IP": 0.875,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.353,
"predicted_H": 0.882,
"predicted_BB": 0.416,
"predicted_SO": 1.005,
"predicted_HR": 0.085,
"predicted_ERA": 3.1797,
"predicted_WHIP": 1.2979
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6089,
"form_weight": 0.3911,
"form_reliability": 0.3872,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.159,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3872,
"prior_weight": 0.6128
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.353,
"final": 0.747,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.882,
"final": 0.9539,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.416,
"final": 1.3805,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 1.005,
"final": 2.2198,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.085,
"final": 0.6422,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.1797,
"final": 3.1797,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2979,
"final": 1.2979,
"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.188 | 0.000 | -0.188 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.560 | 4.000 | 7.000 | Hitting_AB | 4.094 | 4.000 | -0.094 | 0.000 |
| predicted_AVG | 0.234 | 0.250 | 0.286 | Hitting_AVG | 0.258 | 0.250 | -0.008 | 0.000 |
| predicted_BB | 0.320 | 1.000 | 1.000 | Hitting_BB | 0.320 | 1.000 | 0.680 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.035 | 0.000 | -0.035 | 0.000 |
| predicted_H | 1.070 | 1.000 | 2.000 | Hitting_H | 1.055 | 1.000 | -0.055 | 0.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.191 | 0.000 | -0.191 | 0.000 |
| predicted_OBP | 0.314 | 0.400 | 0.375 | Hitting_OBP | 0.316 | 0.400 | 0.084 | 0.000 |
| predicted_R | 0.555 | 0.000 | 1.000 | Hitting_R | 0.555 | 2.000 | -0.555 | -2.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.520 | 0.000 | -0.520 | 0.000 |
| predicted_SLG | 0.447 | 0.250 | 0.286 | Hitting_SLG | 0.444 | 0.250 | -0.194 | 0.000 |
| predicted_SO | 0.926 | 1.000 | 2.000 | Hitting_SO | 0.926 | 1.000 | 0.074 | 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 | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.3200 -> 1.0000 (boost 0.6800, better) |
| Biggest Deboost | predicted_AB: 4.5600 -> 4.0000 (deboost -0.5600, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.5600 -> 7.4091 (boost 2.8491, 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_AVG: 0.2436 -> 0.2531 (boost 0.0095, 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_BB: 0.6226 -> 1.0000 (boost 0.3774, better) | predicted_AB: 7.4091 -> 7.0000 (deboost -0.4091, worse) | AB rounded to 7 (raw=7.41), rates preserved: AVG=0.253 HR/AB=0.053 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0900 -> 1.0000 (deboost -0.0900, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3110 -> 0.3750 (boost 0.0640, better) | predicted_SLG: 0.4593 -> 0.2860 (deboost -0.1733, 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: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4593 (boost 0.1733, better) | predicted_OBP: 0.3750 -> 0.3110 (deboost -0.0640, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677594",
"player_name": "Julio Rodríguez",
"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.188,
"predicted_3B": 0.0,
"predicted_AB": 4.56,
"predicted_AVG": 0.234,
"predicted_BB": 0.32,
"predicted_H": 1.07,
"predicted_HR": 0.2,
"predicted_OBP": 0.314,
"predicted_R": 0.555,
"predicted_RBI": 0.54,
"predicted_SLG": 0.447,
"predicted_SO": 0.926
},
"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.3548,
"predicted_3B": 0.0004,
"predicted_AB": 7.4091,
"predicted_AVG": 0.2436,
"predicted_BB": 0.6191,
"predicted_H": 1.8404,
"predicted_HBP": 0.052,
"predicted_HR": 0.3845,
"predicted_OBP": 0.3148,
"predicted_R": 1.055,
"predicted_RBI": 0.9497,
"predicted_SLG": 0.4596,
"predicted_SO": 1.7145
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.3548,
"delta": 0.1668,
"percent_delta": 0.8872,
"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.56,
"after": 7.4091,
"delta": 2.8491,
"percent_delta": 0.6248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2436,
"delta": 0.0096,
"percent_delta": 0.041,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.32,
"after": 0.6191,
"delta": 0.2991,
"percent_delta": 0.9347,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.8404,
"delta": 0.7704,
"percent_delta": 0.72,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.3845,
"delta": 0.1845,
"percent_delta": 0.9225,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3148,
"delta": 0.0008,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.555,
"after": 1.055,
"delta": 0.5,
"percent_delta": 0.9009,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.9497,
"delta": 0.4097,
"percent_delta": 0.7587,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4596,
"delta": 0.0126,
"percent_delta": 0.0282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.926,
"after": 1.7145,
"delta": 0.7885,
"percent_delta": 0.8515,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.56,
"after": 7.4091,
"delta": 2.8491,
"percent_delta": 0.6248,
"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.3548,
"predicted_3B": 0.0004,
"predicted_AB": 7.4091,
"predicted_AVG": 0.2531,
"predicted_BB": 0.6226,
"predicted_H": 1.8752,
"predicted_HBP": 0.052,
"predicted_HR": 0.3907,
"predicted_OBP": 0.311,
"predicted_R": 1.09,
"predicted_RBI": 0.9812,
"predicted_SLG": 0.4593,
"predicted_SO": 1.7047
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3548,
"after": 0.3548,
"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": 7.4091,
"after": 7.4091,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2436,
"after": 0.2531,
"delta": 0.0095,
"percent_delta": 0.039,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6191,
"after": 0.6226,
"delta": 0.0035,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8404,
"after": 1.8752,
"delta": 0.0348,
"percent_delta": 0.0189,
"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.3845,
"after": 0.3907,
"delta": 0.0062,
"percent_delta": 0.0161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3148,
"after": 0.311,
"delta": -0.0038,
"percent_delta": -0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.055,
"after": 1.09,
"delta": 0.035,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9497,
"after": 0.9812,
"delta": 0.0315,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4596,
"after": 0.4593,
"delta": -0.0003,
"percent_delta": -0.0007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.7145,
"after": 1.7047,
"delta": -0.0098,
"percent_delta": -0.0057,
"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_AVG",
"before": 0.2436,
"after": 0.2531,
"delta": 0.0095,
"percent_delta": 0.039,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.41), rates preserved: AVG=0.253 HR/AB=0.053",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3548,
"after": 0.0,
"delta": -0.3548,
"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": 7.4091,
"after": 7.0,
"delta": -0.4091,
"percent_delta": -0.0552,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6226,
"after": 1.0,
"delta": 0.3774,
"percent_delta": 0.6062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8752,
"after": 2.0,
"delta": 0.1248,
"percent_delta": 0.0666,
"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.3907,
"after": 0.0,
"delta": -0.3907,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9812,
"after": 1.0,
"delta": 0.0188,
"percent_delta": 0.0192,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.7047,
"after": 2.0,
"delta": 0.2953,
"percent_delta": 0.1732,
"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.6226,
"after": 1.0,
"delta": 0.3774,
"percent_delta": 0.6062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.4091,
"after": 7.0,
"delta": -0.4091,
"percent_delta": -0.0552,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.09,
"after": 1.0,
"delta": -0.09,
"percent_delta": -0.0826,
"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": 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_R",
"before": 1.09,
"after": 1.0,
"delta": -0.09,
"percent_delta": -0.0826,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2531,
"after": 0.286,
"delta": 0.0329,
"percent_delta": 0.13,
"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": 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_OBP",
"before": 0.311,
"after": 0.375,
"delta": 0.064,
"percent_delta": 0.2058,
"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.4593,
"after": 0.286,
"delta": -0.1733,
"percent_delta": -0.3773,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.375,
"delta": 0.064,
"percent_delta": 0.2058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4593,
"after": 0.286,
"delta": -0.1733,
"percent_delta": -0.3773,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 0,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2531,
"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.311,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4593,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.286,
"after": 0.2531,
"delta": -0.0329,
"percent_delta": -0.1151,
"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.375,
"after": 0.311,
"delta": -0.064,
"percent_delta": -0.1707,
"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.286,
"after": 0.4593,
"delta": 0.1733,
"percent_delta": 0.6059,
"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.286,
"after": 0.4593,
"delta": 0.1733,
"percent_delta": 0.6059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.311,
"delta": -0.064,
"percent_delta": -0.1707,
"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": 4.56,
"after": 4.0,
"delta": -0.56,
"percent_delta": -0.1228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2531,
"delta": 0.0191,
"percent_delta": 0.0816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.32,
"after": 1.0,
"delta": 0.68,
"percent_delta": 2.125,
"direction": "boost",
"projection_effect": "better",
"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.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.311,
"delta": -0.003,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.555,
"after": 0.0,
"delta": -0.555,
"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.447,
"after": 0.4593,
"delta": 0.0123,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.926,
"after": 1.0,
"delta": 0.074,
"percent_delta": 0.0799,
"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.32,
"after": 1.0,
"delta": 0.68,
"percent_delta": 2.125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.56,
"after": 4.0,
"delta": -0.56,
"percent_delta": -0.1228,
"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 | 4.560 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.320 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.555 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.447 | - |
| predicted_SO | 0.926 | - |
Final model 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.355 | 0.167 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.409 | 2.849 |
| predicted_AVG | 0.244 | 0.010 |
| predicted_BB | 0.619 | 0.299 |
| predicted_H | 1.840 | 0.770 |
| predicted_HBP | 0.052 | - |
| predicted_HR | 0.385 | 0.184 |
| predicted_OBP | 0.315 | 0.001 |
| predicted_R | 1.055 | 0.500 |
| predicted_RBI | 0.950 | 0.410 |
| predicted_SLG | 0.460 | 0.013 |
| predicted_SO | 1.714 | 0.788 |
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.355 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.409 | 0.000 |
| predicted_AVG | 0.253 | 0.009 |
| predicted_BB | 0.623 | 0.004 |
| predicted_H | 1.875 | 0.035 |
| predicted_HBP | 0.052 | 0.000 |
| predicted_HR | 0.391 | 0.006 |
| predicted_OBP | 0.311 | -0.004 |
| predicted_R | 1.090 | 0.035 |
| predicted_RBI | 0.981 | 0.031 |
| predicted_SLG | 0.459 | -0.000 |
| predicted_SO | 1.705 | -0.010 |
AB rounded to 7 (raw=7.41), rates preserved: AVG=0.253 HR/AB=0.053
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.355 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.409 |
| predicted_AVG | 0.286 | 0.033 |
| predicted_BB | 1.000 | 0.377 |
| predicted_H | 2.000 | 0.125 |
| predicted_HR | 0.000 | -0.391 |
| predicted_OBP | 0.375 | 0.064 |
| predicted_R | 1.000 | -0.090 |
| predicted_RBI | 1.000 | 0.019 |
| predicted_SLG | 0.286 | -0.173 |
| predicted_SO | 2.000 | 0.295 |
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 | -3.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | - | 20.000 | 5.000 | 1.000 | 0.000 | 1.000 | 2.000 | 4.000 | 3.000 | 6.000 | 0.2500 | 0.3333 | 0.4500 | 0.2500 | 0.0500 | 0.1000 | 0.1500 | 0.3000 |
| last_10 | 0.20 | 10 | - | 43.000 | 11.000 | 3.000 | 0.000 | 4.000 | 8.000 | 7.000 | 3.000 | 11.000 | 0.2558 | 0.2979 | 0.6047 | 0.2558 | 0.0930 | 0.1860 | 0.0698 | 0.2558 |
| season | 0.60 | 66 | - | 1048.000 | 270.000 | 48.000 | 0.000 | 49.000 | 133.000 | 142.000 | 82.000 | 237.000 | 0.2576 | 0.3161 | 0.4437 | 0.2576 | 0.0468 | 0.1269 | 0.0782 | 0.2261 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5650 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.9990 |
| predicted_AVG | 0.2556 |
| predicted_BB | 0.9960 |
| predicted_H | 2.8110 |
| predicted_HBP | 0.0520 |
| predicted_HR | 0.6170 |
| predicted_OBP | 0.3158 |
| predicted_R | 1.6850 |
| predicted_RBI | 1.4660 |
| predicted_SLG | 0.4754 |
| predicted_SO | 2.7080 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1880 | 0.5650 | 0.3548 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.5600 | 10.9990 | 7.4091 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2556 | 0.2436 | model_form_blend |
| predicted_BB | 0.3200 | 0.9960 | 0.6191 | model_form_blend |
| predicted_H | 1.0700 | 2.8110 | 1.8404 | model_form_blend |
| predicted_HBP | - | 0.0520 | 0.0520 | form_only |
| predicted_HR | 0.2000 | 0.6170 | 0.3845 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3158 | 0.3148 | model_form_blend |
| predicted_R | 0.5550 | 1.6850 | 1.0550 | model_form_blend |
| predicted_RBI | 0.5400 | 1.4660 | 0.9497 | model_form_blend |
| predicted_SLG | 0.4470 | 0.4754 | 0.4596 | model_form_blend |
| predicted_SO | 0.9260 | 2.7080 | 1.7145 | 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 | 256 |
| 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.258 |
| 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 | 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 | 2 |
| 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 | 20260607_SEA@DET |
| game_type | full |
| mlbID | 677594 |
| playerID | 677594 |
| playerName | Julio Rodríguez |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.3 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.338 |
| sl_xwoba | 0.338 |
| sl_xba | 0.262 |
| sl_xslg | 0.463 |
| sl_sweet_spot_percent | 30.6 |
| sl_barrel_batted_rate | 9.2 |
| sl_hard_hit_percent | 43.7 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 13.0 |
| sl_whiff_percent | 27.4 |
| 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.167 | 0.000 | 0.000 | Hitting_2B | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 4.070 | 4.000 | 6.000 | Hitting_AB | 3.549 | 5.000 | 0.451 | -1.000 |
| predicted_AVG | 0.247 | 0.250 | 0.333 | Hitting_AVG | 0.245 | 0.400 | 0.005 | -0.150 |
| predicted_BB | 0.343 | 1.000 | 0.000 | Hitting_BB | 0.343 | 0.000 | 0.657 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.043 | 0.000 | -0.043 | 0.000 |
| predicted_H | 1.000 | 1.000 | 2.000 | Hitting_H | 0.871 | 2.000 | 0.129 | -1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.060 | 0.000 | -0.060 | 0.000 |
| predicted_OBP | 0.324 | 0.400 | 0.333 | Hitting_OBP | 0.323 | 0.400 | 0.077 | 0.000 |
| predicted_R | 0.481 | 0.000 | 1.000 | Hitting_R | 0.481 | 0.000 | -0.481 | 0.000 |
| predicted_RBI | 0.440 | 0.000 | 1.000 | Hitting_RBI | 0.476 | 1.000 | -0.476 | -1.000 |
| predicted_SLG | 0.373 | 0.250 | 0.333 | Hitting_SLG | 0.353 | 0.400 | -0.103 | -0.150 |
| predicted_SO | 0.845 | 1.000 | 1.000 | Hitting_SO | 0.845 | 1.000 | 0.155 | 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.3430 -> 1.0000 (boost 0.6570, better) |
| Biggest Deboost | predicted_R: 0.4810 -> 0.0000 (deboost -0.4810, 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 | 7 | 1 | 6 | 2 | predicted_AB: 4.0700 -> 6.2322 (boost 2.1622, better) | predicted_SLG: 0.3730 -> 0.3641 (deboost -0.0089, 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_AVG: 0.2574 -> 0.2664 (boost 0.0090, better) | predicted_OBP: 0.3272 -> 0.3174 (deboost -0.0098, 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_H: 1.6600 -> 2.0000 (boost 0.3400, better) | predicted_BB: 0.4655 -> 0.0000 (deboost -0.4655, worse) | AB rounded to 6 (raw=6.23), rates preserved: AVG=0.266 HR/AB=0.018 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7553 -> 1.0000 (boost 0.2447, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2664 -> 0.3330 (boost 0.0666, better) | predicted_SLG: 0.3617 -> 0.3330 (deboost -0.0287, 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_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3617 (boost 0.0287, better) | predicted_AVG: 0.3330 -> 0.2664 (deboost -0.0666, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "702284",
"player_name": "Cole Young",
"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.167,
"predicted_3B": 0.017,
"predicted_AB": 4.07,
"predicted_AVG": 0.247,
"predicted_BB": 0.343,
"predicted_H": 1.0,
"predicted_HR": 0.09,
"predicted_OBP": 0.324,
"predicted_R": 0.481,
"predicted_RBI": 0.44,
"predicted_SLG": 0.373,
"predicted_SO": 0.845
},
"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.208,
"predicted_3B": 0.021,
"predicted_AB": 6.2322,
"predicted_AVG": 0.2574,
"predicted_BB": 0.4629,
"predicted_H": 1.6292,
"predicted_HBP": 0.25,
"predicted_HR": 0.1129,
"predicted_OBP": 0.3272,
"predicted_R": 0.731,
"predicted_RBI": 0.686,
"predicted_SLG": 0.3641,
"predicted_SO": 1.199
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.208,
"delta": 0.041,
"percent_delta": 0.2455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.021,
"delta": 0.004,
"percent_delta": 0.2353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.07,
"after": 6.2322,
"delta": 2.1622,
"percent_delta": 0.5313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2574,
"delta": 0.0104,
"percent_delta": 0.0421,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.343,
"after": 0.4629,
"delta": 0.1199,
"percent_delta": 0.3496,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.6292,
"delta": 0.6292,
"percent_delta": 0.6292,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1129,
"delta": 0.0229,
"percent_delta": 0.2544,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.324,
"after": 0.3272,
"delta": 0.0032,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.481,
"after": 0.731,
"delta": 0.25,
"percent_delta": 0.5198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.686,
"delta": 0.246,
"percent_delta": 0.5591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.373,
"after": 0.3641,
"delta": -0.0089,
"percent_delta": -0.0239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.845,
"after": 1.199,
"delta": 0.354,
"percent_delta": 0.4189,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.07,
"after": 6.2322,
"delta": 2.1622,
"percent_delta": 0.5313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.373,
"after": 0.3641,
"delta": -0.0089,
"percent_delta": -0.0239,
"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.208,
"predicted_3B": 0.021,
"predicted_AB": 6.2322,
"predicted_AVG": 0.2664,
"predicted_BB": 0.4655,
"predicted_H": 1.66,
"predicted_HBP": 0.25,
"predicted_HR": 0.1147,
"predicted_OBP": 0.3174,
"predicted_R": 0.7553,
"predicted_RBI": 0.7088,
"predicted_SLG": 0.3617,
"predicted_SO": 1.1922
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.208,
"after": 0.208,
"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": 6.2322,
"after": 6.2322,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2574,
"after": 0.2664,
"delta": 0.009,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4629,
"after": 0.4655,
"delta": 0.0026,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6292,
"after": 1.66,
"delta": 0.0308,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.25,
"after": 0.25,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1129,
"after": 0.1147,
"delta": 0.0018,
"percent_delta": 0.0159,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3272,
"after": 0.3174,
"delta": -0.0098,
"percent_delta": -0.03,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.731,
"after": 0.7553,
"delta": 0.0243,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.686,
"after": 0.7088,
"delta": 0.0228,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3641,
"after": 0.3617,
"delta": -0.0024,
"percent_delta": -0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.199,
"after": 1.1922,
"delta": -0.0068,
"percent_delta": -0.0057,
"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.2574,
"after": 0.2664,
"delta": 0.009,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3272,
"after": 0.3174,
"delta": -0.0098,
"percent_delta": -0.03,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.23), rates preserved: AVG=0.266 HR/AB=0.018",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.208,
"after": 0.0,
"delta": -0.208,
"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": 6.2322,
"after": 6.0,
"delta": -0.2322,
"percent_delta": -0.0373,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4655,
"after": 0.0,
"delta": -0.4655,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.66,
"after": 2.0,
"delta": 0.34,
"percent_delta": 0.2048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"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.1147,
"after": 0.0,
"delta": -0.1147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7088,
"after": 1.0,
"delta": 0.2912,
"percent_delta": 0.4108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1922,
"after": 1.0,
"delta": -0.1922,
"percent_delta": -0.1612,
"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_H",
"before": 1.66,
"after": 2.0,
"delta": 0.34,
"percent_delta": 0.2048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4655,
"after": 0.0,
"delta": -0.4655,
"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": 6.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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 0.7553,
"after": 1.0,
"delta": 0.2447,
"percent_delta": 0.324,
"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.7553,
"after": 1.0,
"delta": 0.2447,
"percent_delta": 0.324,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 2.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2664,
"after": 0.333,
"delta": 0.0666,
"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_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_OBP",
"before": 0.3174,
"after": 0.333,
"delta": 0.0156,
"percent_delta": 0.0491,
"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.3617,
"after": 0.333,
"delta": -0.0287,
"percent_delta": -0.0793,
"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.2664,
"after": 0.333,
"delta": 0.0666,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3617,
"after": 0.333,
"delta": -0.0287,
"percent_delta": -0.0793,
"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": 6.0,
"after": 4.0,
"delta": -2.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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 6.0,
"after": 4.0,
"delta": -2.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": 4.0,
"predicted_AVG": 0.2664,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3174,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3617,
"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.333,
"after": 0.2664,
"delta": -0.0666,
"percent_delta": -0.2001,
"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.3174,
"delta": -0.0156,
"percent_delta": -0.047,
"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.3617,
"delta": 0.0287,
"percent_delta": 0.0862,
"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.3617,
"delta": 0.0287,
"percent_delta": 0.0862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2664,
"delta": -0.0666,
"percent_delta": -0.2001,
"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.017,
"after": 0.0,
"delta": -0.017,
"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.247,
"after": 0.2664,
"delta": 0.0194,
"percent_delta": 0.0785,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.343,
"after": 1.0,
"delta": 0.657,
"percent_delta": 1.9155,
"direction": "boost",
"projection_effect": "better",
"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.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.324,
"after": 0.3174,
"delta": -0.0066,
"percent_delta": -0.0204,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.481,
"after": 0.0,
"delta": -0.481,
"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.373,
"after": 0.3617,
"delta": -0.0113,
"percent_delta": -0.0303,
"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": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.343,
"after": 1.0,
"delta": 0.657,
"percent_delta": 1.9155,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.481,
"after": 0.0,
"delta": -0.481,
"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.017 | - |
| predicted_AB | 4.070 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.343 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.324 | - |
| predicted_R | 0.481 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.373 | - |
| predicted_SO | 0.845 | - |
Final model 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.041 |
| predicted_3B | 0.021 | 0.004 |
| predicted_AB | 6.232 | 2.162 |
| predicted_AVG | 0.257 | 0.010 |
| predicted_BB | 0.463 | 0.120 |
| predicted_H | 1.629 | 0.629 |
| predicted_HBP | 0.250 | - |
| predicted_HR | 0.113 | 0.023 |
| predicted_OBP | 0.327 | 0.003 |
| predicted_R | 0.731 | 0.250 |
| predicted_RBI | 0.686 | 0.246 |
| predicted_SLG | 0.364 | -0.009 |
| predicted_SO | 1.199 | 0.354 |
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.021 | 0.000 |
| predicted_AB | 6.232 | 0.000 |
| predicted_AVG | 0.266 | 0.009 |
| predicted_BB | 0.466 | 0.003 |
| predicted_H | 1.660 | 0.031 |
| predicted_HBP | 0.250 | 0.000 |
| predicted_HR | 0.115 | 0.002 |
| predicted_OBP | 0.317 | -0.010 |
| predicted_R | 0.755 | 0.024 |
| predicted_RBI | 0.709 | 0.023 |
| predicted_SLG | 0.362 | -0.002 |
| predicted_SO | 1.192 | -0.007 |
AB rounded to 6 (raw=6.23), rates preserved: AVG=0.266 HR/AB=0.018
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 0.000 | - |
| H | 2.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 | 6.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.208 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 6.000 | -0.232 |
| predicted_AVG | 0.333 | 0.067 |
| predicted_BB | 0.000 | -0.466 |
| predicted_H | 2.000 | 0.340 |
| predicted_HR | 0.000 | -0.115 |
| predicted_OBP | 0.333 | 0.016 |
| predicted_R | 1.000 | 0.245 |
| predicted_RBI | 1.000 | 0.291 |
| predicted_SLG | 0.333 | -0.029 |
| predicted_SO | 1.000 | -0.192 |
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 | -2.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | - | 21.000 | 6.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 2.000 | 0.2857 | 0.3182 | 0.2857 | 0.2857 | 0.0000 | 0.0476 | 0.0000 | 0.0952 |
| last_10 | 0.20 | 10 | - | 39.000 | 13.000 | 0.000 | 0.000 | 1.000 | 4.000 | 5.000 | 2.000 | 4.000 | 0.3333 | 0.3721 | 0.4103 | 0.3333 | 0.0256 | 0.1026 | 0.0513 | 0.1026 |
| season | 0.60 | 66 | - | 827.000 | 203.000 | 39.000 | 4.000 | 14.000 | 111.000 | 112.000 | 80.000 | 197.000 | 0.2455 | 0.3230 | 0.3531 | 0.2455 | 0.0169 | 0.1342 | 0.0967 | 0.2382 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2600 |
| predicted_3B | 0.0260 |
| predicted_AB | 8.9740 |
| predicted_AVG | 0.2705 |
| predicted_BB | 0.6150 |
| predicted_H | 2.4270 |
| predicted_HBP | 0.2500 |
| predicted_HR | 0.1420 |
| predicted_OBP | 0.3313 |
| predicted_R | 1.0480 |
| predicted_RBI | 0.9980 |
| predicted_SLG | 0.3528 |
| predicted_SO | 1.6480 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.2600 | 0.2080 | model_form_blend |
| predicted_3B | 0.0170 | 0.0260 | 0.0210 | model_form_blend |
| predicted_AB | 4.0700 | 8.9740 | 6.2322 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2705 | 0.2574 | model_form_blend |
| predicted_BB | 0.3430 | 0.6150 | 0.4629 | model_form_blend |
| predicted_H | 1.0000 | 2.4270 | 1.6292 | model_form_blend |
| predicted_HBP | - | 0.2500 | 0.2500 | form_only |
| predicted_HR | 0.0900 | 0.1420 | 0.1129 | model_form_blend |
| predicted_OBP | 0.3240 | 0.3313 | 0.3272 | model_form_blend |
| predicted_R | 0.4810 | 1.0480 | 0.7310 | model_form_blend |
| predicted_RBI | 0.4400 | 0.9980 | 0.6860 | model_form_blend |
| predicted_SLG | 0.3730 | 0.3528 | 0.3641 | model_form_blend |
| predicted_SO | 0.8450 | 1.6480 | 1.1990 | 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 | 233 |
| 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.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 | 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 | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | 20260607_SEA@DET |
| game_type | full |
| mlbID | 702284 |
| playerID | 702284 |
| playerName | Cole Young |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 19.8 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.307 |
| sl_xwoba | 0.329 |
| sl_xba | 0.269 |
| sl_xslg | 0.406 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 36.8 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 17.1 |
| sl_whiff_percent | 22.7 |
| 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.286 | 1.000 | 0.000 | Hitting_2B | 0.286 | 0.000 | 0.714 | 1.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 3.950 | 5.000 | 6.000 | Hitting_AB | 3.698 | 3.000 | 1.302 | 2.000 |
| predicted_AVG | 0.246 | 0.400 | 0.333 | Hitting_AVG | 0.304 | 0.333 | 0.096 | 0.067 |
| predicted_BB | 0.415 | 0.000 | 1.000 | Hitting_BB | 0.415 | 1.000 | -0.415 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_H | 0.970 | 2.000 | 2.000 | Hitting_H | 1.125 | 1.000 | 0.875 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.097 | 0.000 | -0.097 | 0.000 |
| predicted_OBP | 0.353 | 0.400 | 0.429 | Hitting_OBP | 0.390 | 0.600 | 0.010 | -0.200 |
| predicted_R | 0.681 | 1.000 | 1.000 | Hitting_R | 0.681 | 0.000 | 0.319 | 1.000 |
| predicted_RBI | 0.480 | 2.000 | 1.000 | Hitting_RBI | 0.456 | 1.000 | 1.544 | 1.000 |
| predicted_SLG | 0.401 | 0.600 | 0.333 | Hitting_SLG | 0.471 | 0.333 | 0.129 | 0.267 |
| predicted_SO | 0.976 | 2.000 | 1.000 | Hitting_SO | 0.976 | 1.000 | 1.024 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 8 |
| Deboosted Metrics | 2 |
| Better Metrics | 7 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_RBI: 0.4800 -> 2.0000 (boost 1.5200, better) |
| Biggest Deboost | predicted_BB: 0.4150 -> 0.0000 (deboost -0.4150, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.9500 -> 6.4885 (boost 2.5385, 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_AVG: 0.2620 -> 0.2748 (boost 0.0128, better) | predicted_OBP: 0.3669 -> 0.3539 (deboost -0.0130, 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_H: 1.7833 -> 2.0000 (boost 0.2167, better) | predicted_SO: 1.5523 -> 1.0000 (deboost -0.5523, better) | AB rounded to 6 (raw=6.49), rates preserved: AVG=0.275 HR/AB=0.019 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0876 -> 1.0000 (deboost -0.0876, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3539 -> 0.4290 (boost 0.0751, better) | predicted_SLG: 0.4181 -> 0.3330 (deboost -0.0851, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 5.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.4181 (boost 0.0851, better) | predicted_OBP: 0.4290 -> 0.3539 (deboost -0.0751, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668227",
"player_name": "Randy Arozarena",
"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.286,
"predicted_3B": 0.02,
"predicted_AB": 3.95,
"predicted_AVG": 0.246,
"predicted_BB": 0.415,
"predicted_H": 0.97,
"predicted_HR": 0.09,
"predicted_OBP": 0.353,
"predicted_R": 0.681,
"predicted_RBI": 0.48,
"predicted_SLG": 0.401,
"predicted_SO": 0.976
},
"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.5141,
"predicted_3B": 0.0253,
"predicted_AB": 6.4885,
"predicted_AVG": 0.262,
"predicted_BB": 0.7898,
"predicted_H": 1.7502,
"predicted_HBP": 0.417,
"predicted_HR": 0.1196,
"predicted_OBP": 0.3669,
"predicted_R": 1.0527,
"predicted_RBI": 0.8137,
"predicted_SLG": 0.4094,
"predicted_SO": 1.5612
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.286,
"after": 0.5141,
"delta": 0.2281,
"percent_delta": 0.7976,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0253,
"delta": 0.0053,
"percent_delta": 0.265,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.95,
"after": 6.4885,
"delta": 2.5385,
"percent_delta": 0.6427,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.262,
"delta": 0.016,
"percent_delta": 0.065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.415,
"after": 0.7898,
"delta": 0.3748,
"percent_delta": 0.9031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 1.7502,
"delta": 0.7802,
"percent_delta": 0.8043,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1196,
"delta": 0.0296,
"percent_delta": 0.3289,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.353,
"after": 0.3669,
"delta": 0.0139,
"percent_delta": 0.0394,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.681,
"after": 1.0527,
"delta": 0.3717,
"percent_delta": 0.5458,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.8137,
"delta": 0.3337,
"percent_delta": 0.6952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.401,
"after": 0.4094,
"delta": 0.0084,
"percent_delta": 0.0209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.976,
"after": 1.5612,
"delta": 0.5852,
"percent_delta": 0.5996,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.95,
"after": 6.4885,
"delta": 2.5385,
"percent_delta": 0.6427,
"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.5141,
"predicted_3B": 0.0253,
"predicted_AB": 6.4885,
"predicted_AVG": 0.2748,
"predicted_BB": 0.7943,
"predicted_H": 1.7833,
"predicted_HBP": 0.417,
"predicted_HR": 0.1215,
"predicted_OBP": 0.3539,
"predicted_R": 1.0876,
"predicted_RBI": 0.8407,
"predicted_SLG": 0.4181,
"predicted_SO": 1.5523
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5141,
"after": 0.5141,
"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": 6.4885,
"after": 6.4885,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2748,
"delta": 0.0128,
"percent_delta": 0.0489,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7898,
"after": 0.7943,
"delta": 0.0045,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7502,
"after": 1.7833,
"delta": 0.0331,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.417,
"after": 0.417,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1196,
"after": 0.1215,
"delta": 0.0019,
"percent_delta": 0.0159,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3669,
"after": 0.3539,
"delta": -0.013,
"percent_delta": -0.0354,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0527,
"after": 1.0876,
"delta": 0.0349,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8137,
"after": 0.8407,
"delta": 0.027,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4094,
"after": 0.4181,
"delta": 0.0087,
"percent_delta": 0.0213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5612,
"after": 1.5523,
"delta": -0.0089,
"percent_delta": -0.0057,
"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.262,
"after": 0.2748,
"delta": 0.0128,
"percent_delta": 0.0489,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3669,
"after": 0.3539,
"delta": -0.013,
"percent_delta": -0.0354,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.49), rates preserved: AVG=0.275 HR/AB=0.019",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.5141,
"after": 0.0,
"delta": -0.5141,
"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": 6.4885,
"after": 6.0,
"delta": -0.4885,
"percent_delta": -0.0753,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7943,
"after": 1.0,
"delta": 0.2057,
"percent_delta": 0.259,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7833,
"after": 2.0,
"delta": 0.2167,
"percent_delta": 0.1215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.417,
"after": 0.0,
"delta": -0.417,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1215,
"after": 0.0,
"delta": -0.1215,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8407,
"after": 1.0,
"delta": 0.1593,
"percent_delta": 0.1895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5523,
"after": 1.0,
"delta": -0.5523,
"percent_delta": -0.3558,
"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_H",
"before": 1.7833,
"after": 2.0,
"delta": 0.2167,
"percent_delta": 0.1215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5523,
"after": 1.0,
"delta": -0.5523,
"percent_delta": -0.3558,
"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": 6.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.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": 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_R",
"before": 1.0876,
"after": 1.0,
"delta": -0.0876,
"percent_delta": -0.0805,
"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": 1.0876,
"after": 1.0,
"delta": -0.0876,
"percent_delta": -0.0805,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2748,
"after": 0.333,
"delta": 0.0582,
"percent_delta": 0.2118,
"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": 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_OBP",
"before": 0.3539,
"after": 0.429,
"delta": 0.0751,
"percent_delta": 0.2122,
"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.4181,
"after": 0.333,
"delta": -0.0851,
"percent_delta": -0.2035,
"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.3539,
"after": 0.429,
"delta": 0.0751,
"percent_delta": 0.2122,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4181,
"after": 0.333,
"delta": -0.0851,
"percent_delta": -0.2035,
"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": 2.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": 6.0,
"after": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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": 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_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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"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_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": 6.0,
"after": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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.2748,
"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.3539,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4181,
"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.333,
"after": 0.2748,
"delta": -0.0582,
"percent_delta": -0.1747,
"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.429,
"after": 0.3539,
"delta": -0.0751,
"percent_delta": -0.175,
"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.4181,
"delta": 0.0851,
"percent_delta": 0.2554,
"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.4181,
"delta": 0.0851,
"percent_delta": 0.2554,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3539,
"delta": -0.0751,
"percent_delta": -0.175,
"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.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.95,
"after": 5.0,
"delta": 1.05,
"percent_delta": 0.2658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2748,
"delta": 0.0288,
"percent_delta": 0.1171,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.415,
"after": 0.0,
"delta": -0.415,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.353,
"after": 0.3539,
"delta": 0.0009,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.681,
"after": 1.0,
"delta": 0.319,
"percent_delta": 0.4684,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 2.0,
"delta": 1.52,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.401,
"after": 0.4181,
"delta": 0.0171,
"percent_delta": 0.0426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.976,
"after": 2.0,
"delta": 1.024,
"percent_delta": 1.0492,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.48,
"after": 2.0,
"delta": 1.52,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.415,
"after": 0.0,
"delta": -0.415,
"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.286 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 3.950 | - |
| predicted_AVG | 0.246 | - |
| predicted_BB | 0.415 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.353 | - |
| predicted_R | 0.681 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.401 | - |
| predicted_SO | 0.976 | - |
Final model 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.514 | 0.228 |
| predicted_3B | 0.025 | 0.005 |
| predicted_AB | 6.489 | 2.538 |
| predicted_AVG | 0.262 | 0.016 |
| predicted_BB | 0.790 | 0.375 |
| predicted_H | 1.750 | 0.780 |
| predicted_HBP | 0.417 | - |
| predicted_HR | 0.120 | 0.030 |
| predicted_OBP | 0.367 | 0.014 |
| predicted_R | 1.053 | 0.372 |
| predicted_RBI | 0.814 | 0.334 |
| predicted_SLG | 0.409 | 0.008 |
| predicted_SO | 1.561 | 0.585 |
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.514 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 6.489 | 0.000 |
| predicted_AVG | 0.275 | 0.013 |
| predicted_BB | 0.794 | 0.005 |
| predicted_H | 1.783 | 0.033 |
| predicted_HBP | 0.417 | 0.000 |
| predicted_HR | 0.121 | 0.002 |
| predicted_OBP | 0.354 | -0.013 |
| predicted_R | 1.088 | 0.035 |
| predicted_RBI | 0.841 | 0.027 |
| predicted_SLG | 0.418 | 0.009 |
| predicted_SO | 1.552 | -0.009 |
AB rounded to 6 (raw=6.49), rates preserved: AVG=0.275 HR/AB=0.019
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.514 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 6.000 | -0.489 |
| predicted_AVG | 0.333 | 0.058 |
| predicted_BB | 1.000 | 0.206 |
| predicted_H | 2.000 | 0.217 |
| predicted_HR | 0.000 | -0.121 |
| predicted_OBP | 0.429 | 0.075 |
| predicted_R | 1.000 | -0.088 |
| predicted_RBI | 1.000 | 0.159 |
| predicted_SLG | 0.333 | -0.085 |
| predicted_SO | 1.000 | -0.552 |
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 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 0.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 | 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 | 5.000 | 2.000 | 0.000 | 0.000 | 3.000 | 2.000 | 4.000 | 4.000 | 0.2778 | 0.4348 | 0.3889 | 0.2778 | 0.0000 | 0.1667 | 0.2222 | 0.2222 |
| last_10 | 0.20 | 10 | - | 40.000 | 9.000 | 3.000 | 0.000 | 0.000 | 4.000 | 5.000 | 4.000 | 7.000 | 0.2250 | 0.3261 | 0.3000 | 0.2250 | 0.0000 | 0.1000 | 0.1000 | 0.1750 |
| season | 0.60 | 66 | - | 917.000 | 279.000 | 71.000 | 5.000 | 24.000 | 113.000 | 169.000 | 103.000 | 242.000 | 0.3043 | 0.3904 | 0.4711 | 0.3043 | 0.0262 | 0.1232 | 0.1123 | 0.2639 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8020 |
| predicted_3B | 0.0320 |
| predicted_AB | 9.6930 |
| predicted_AVG | 0.2822 |
| predicted_BB | 1.2630 |
| predicted_H | 2.7350 |
| predicted_HBP | 0.4170 |
| predicted_HR | 0.1570 |
| predicted_OBP | 0.3844 |
| predicted_R | 1.5220 |
| predicted_RBI | 1.2350 |
| predicted_SLG | 0.4201 |
| predicted_SO | 2.3000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2860 | 0.8020 | 0.5141 | model_form_blend |
| predicted_3B | 0.0200 | 0.0320 | 0.0253 | model_form_blend |
| predicted_AB | 3.9500 | 9.6930 | 6.4885 | model_form_blend |
| predicted_AVG | 0.2460 | 0.2822 | 0.2620 | model_form_blend |
| predicted_BB | 0.4150 | 1.2630 | 0.7898 | model_form_blend |
| predicted_H | 0.9700 | 2.7350 | 1.7502 | model_form_blend |
| predicted_HBP | - | 0.4170 | 0.4170 | form_only |
| predicted_HR | 0.0900 | 0.1570 | 0.1196 | model_form_blend |
| predicted_OBP | 0.3530 | 0.3844 | 0.3669 | model_form_blend |
| predicted_R | 0.6810 | 1.5220 | 1.0527 | model_form_blend |
| predicted_RBI | 0.4800 | 1.2350 | 0.8137 | model_form_blend |
| predicted_SLG | 0.4010 | 0.4201 | 0.4094 | model_form_blend |
| predicted_SO | 0.9760 | 2.3000 | 1.5612 | 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 | 248 |
| Season rows before report date | 248 |
| Report year | 2026 |
| Profile rows used | 248 |
| 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 | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.304 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 1 |
| 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 | 1 |
| 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 | 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 | 20260607_SEA@DET |
| game_type | full |
| mlbID | 668227 |
| playerID | 668227 |
| playerName | Randy Arozarena |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 22.3 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.364 |
| sl_xwoba | 0.353 |
| sl_xba | 0.268 |
| sl_xslg | 0.425 |
| sl_sweet_spot_percent | 38.5 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 42.3 |
| sl_exit_velocity_avg | 91.5 |
| sl_launch_angle_avg | 7.9 |
| sl_whiff_percent | 27.2 |
| 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.101 | 0.000 | 0.000 | Hitting_2B | 0.101 | 1.000 | -0.101 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.390 | 5.000 | 7.000 | Hitting_AB | 3.996 | 5.000 | 1.004 | 0.000 |
| predicted_AVG | 0.242 | 0.400 | 0.286 | Hitting_AVG | 0.267 | 0.400 | 0.133 | 0.000 |
| predicted_BB | 0.367 | 0.000 | 1.000 | Hitting_BB | 0.367 | 0.000 | -0.367 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.046 | 1.000 | -0.046 | -1.000 |
| predicted_H | 1.070 | 2.000 | 2.000 | Hitting_H | 1.068 | 2.000 | 0.932 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.097 | 0.000 | -0.097 | 0.000 |
| predicted_OBP | 0.325 | 0.400 | 0.375 | Hitting_OBP | 0.331 | 0.400 | 0.069 | 0.000 |
| predicted_R | 0.409 | 1.000 | 1.000 | Hitting_R | 0.409 | 1.000 | 0.591 | 0.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.464 | 1.000 | -0.464 | -1.000 |
| predicted_SLG | 0.401 | 0.400 | 0.286 | Hitting_SLG | 0.365 | 0.600 | 0.035 | -0.200 |
| predicted_SO | 0.603 | 0.000 | 1.000 | Hitting_SO | 0.603 | 1.000 | -0.603 | -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: 1.0700 -> 2.0000 (boost 0.9300, better) |
| Biggest Deboost | predicted_SO: 0.6030 -> 0.0000 (deboost -0.6030, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.3900 -> 7.3574 (boost 2.9674, 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 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2572 -> 0.2705 (boost 0.0133, better) | predicted_SLG: 0.4052 -> 0.3963 (deboost -0.0089, 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_BB: 0.5802 -> 1.0000 (boost 0.4198, better) | predicted_AB: 7.3574 -> 7.0000 (deboost -0.3574, worse) | AB rounded to 7 (raw=7.36), rates preserved: AVG=0.270 HR/AB=0.029 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8924 -> 1.0000 (boost 0.1076, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3238 -> 0.3750 (boost 0.0512, better) | predicted_SLG: 0.3963 -> 0.2860 (deboost -0.1103, 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: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3963 (boost 0.1103, better) | predicted_OBP: 0.3750 -> 0.3238 (deboost -0.0512, 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.101,
"predicted_3B": 0.0,
"predicted_AB": 4.39,
"predicted_AVG": 0.242,
"predicted_BB": 0.367,
"predicted_H": 1.07,
"predicted_HR": 0.12,
"predicted_OBP": 0.325,
"predicted_R": 0.409,
"predicted_RBI": 0.43,
"predicted_SLG": 0.401,
"predicted_SO": 0.603
},
"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.276,
"predicted_3B": 0.0004,
"predicted_AB": 7.3574,
"predicted_AVG": 0.2572,
"predicted_BB": 0.5769,
"predicted_H": 1.9532,
"predicted_HBP": 0.201,
"predicted_HR": 0.2128,
"predicted_OBP": 0.3306,
"predicted_R": 0.8637,
"predicted_RBI": 0.7415,
"predicted_SLG": 0.4052,
"predicted_SO": 1.0417
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.101,
"after": 0.276,
"delta": 0.175,
"percent_delta": 1.7327,
"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.39,
"after": 7.3574,
"delta": 2.9674,
"percent_delta": 0.6759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2572,
"delta": 0.0152,
"percent_delta": 0.0628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.367,
"after": 0.5769,
"delta": 0.2099,
"percent_delta": 0.5719,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.9532,
"delta": 0.8832,
"percent_delta": 0.8254,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.2128,
"delta": 0.0928,
"percent_delta": 0.7733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3306,
"delta": 0.0056,
"percent_delta": 0.0172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.409,
"after": 0.8637,
"delta": 0.4547,
"percent_delta": 1.1117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.7415,
"delta": 0.3115,
"percent_delta": 0.7244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.401,
"after": 0.4052,
"delta": 0.0042,
"percent_delta": 0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.603,
"after": 1.0417,
"delta": 0.4387,
"percent_delta": 0.7275,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.39,
"after": 7.3574,
"delta": 2.9674,
"percent_delta": 0.6759,
"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": 9,
"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.276,
"predicted_3B": 0.0004,
"predicted_AB": 7.3574,
"predicted_AVG": 0.2705,
"predicted_BB": 0.5802,
"predicted_H": 1.9901,
"predicted_HBP": 0.201,
"predicted_HR": 0.2162,
"predicted_OBP": 0.3238,
"predicted_R": 0.8924,
"predicted_RBI": 0.7661,
"predicted_SLG": 0.3963,
"predicted_SO": 1.0358
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.276,
"after": 0.276,
"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": 7.3574,
"after": 7.3574,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2572,
"after": 0.2705,
"delta": 0.0133,
"percent_delta": 0.0517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5769,
"after": 0.5802,
"delta": 0.0033,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9532,
"after": 1.9901,
"delta": 0.0369,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.201,
"after": 0.201,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2128,
"after": 0.2162,
"delta": 0.0034,
"percent_delta": 0.016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3306,
"after": 0.3238,
"delta": -0.0068,
"percent_delta": -0.0206,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8637,
"after": 0.8924,
"delta": 0.0287,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7415,
"after": 0.7661,
"delta": 0.0246,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4052,
"after": 0.3963,
"delta": -0.0089,
"percent_delta": -0.022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0417,
"after": 1.0358,
"delta": -0.0059,
"percent_delta": -0.0057,
"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.2572,
"after": 0.2705,
"delta": 0.0133,
"percent_delta": 0.0517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4052,
"after": 0.3963,
"delta": -0.0089,
"percent_delta": -0.022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.36), rates preserved: AVG=0.270 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.276,
"after": 0.0,
"delta": -0.276,
"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": 7.3574,
"after": 7.0,
"delta": -0.3574,
"percent_delta": -0.0486,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5802,
"after": 1.0,
"delta": 0.4198,
"percent_delta": 0.7235,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9901,
"after": 2.0,
"delta": 0.0099,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.201,
"after": 0.0,
"delta": -0.201,
"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.7661,
"after": 1.0,
"delta": 0.2339,
"percent_delta": 0.3053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0358,
"after": 1.0,
"delta": -0.0358,
"percent_delta": -0.0346,
"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_BB",
"before": 0.5802,
"after": 1.0,
"delta": 0.4198,
"percent_delta": 0.7235,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.3574,
"after": 7.0,
"delta": -0.3574,
"percent_delta": -0.0486,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 0.8924,
"after": 1.0,
"delta": 0.1076,
"percent_delta": 0.1206,
"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.8924,
"after": 1.0,
"delta": 0.1076,
"percent_delta": 0.1206,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2705,
"after": 0.286,
"delta": 0.0155,
"percent_delta": 0.0573,
"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": 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_OBP",
"before": 0.3238,
"after": 0.375,
"delta": 0.0512,
"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": 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.3963,
"after": 0.286,
"delta": -0.1103,
"percent_delta": -0.2783,
"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.3238,
"after": 0.375,
"delta": 0.0512,
"percent_delta": 0.1581,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3963,
"after": 0.286,
"delta": -0.1103,
"percent_delta": -0.2783,
"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": 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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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": 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_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": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.2705,
"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.3238,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3963,
"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.286,
"after": 0.2705,
"delta": -0.0155,
"percent_delta": -0.0542,
"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.375,
"after": 0.3238,
"delta": -0.0512,
"percent_delta": -0.1365,
"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.286,
"after": 0.3963,
"delta": 0.1103,
"percent_delta": 0.3856,
"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.286,
"after": 0.3963,
"delta": 0.1103,
"percent_delta": 0.3856,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3238,
"delta": -0.0512,
"percent_delta": -0.1365,
"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.101,
"after": 0.0,
"delta": -0.101,
"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.39,
"after": 5.0,
"delta": 0.61,
"percent_delta": 0.139,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2705,
"delta": 0.0285,
"percent_delta": 0.1178,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.367,
"after": 0.0,
"delta": -0.367,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 2.0,
"delta": 0.93,
"percent_delta": 0.8692,
"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.325,
"after": 0.3238,
"delta": -0.0012,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.409,
"after": 1.0,
"delta": 0.591,
"percent_delta": 1.445,
"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.401,
"after": 0.3963,
"delta": -0.0047,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.603,
"after": 0.0,
"delta": -0.603,
"percent_delta": -1.0,
"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": 1.07,
"after": 2.0,
"delta": 0.93,
"percent_delta": 0.8692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.603,
"after": 0.0,
"delta": -0.603,
"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.101 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.390 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.367 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.409 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.401 | - |
| predicted_SO | 0.603 | - |
Final model 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.276 | 0.175 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.357 | 2.967 |
| predicted_AVG | 0.257 | 0.015 |
| predicted_BB | 0.577 | 0.210 |
| predicted_H | 1.953 | 0.883 |
| predicted_HBP | 0.201 | - |
| predicted_HR | 0.213 | 0.093 |
| predicted_OBP | 0.331 | 0.006 |
| predicted_R | 0.864 | 0.455 |
| predicted_RBI | 0.742 | 0.312 |
| predicted_SLG | 0.405 | 0.004 |
| predicted_SO | 1.042 | 0.439 |
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.276 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.357 | 0.000 |
| predicted_AVG | 0.271 | 0.013 |
| predicted_BB | 0.580 | 0.003 |
| predicted_H | 1.990 | 0.037 |
| predicted_HBP | 0.201 | 0.000 |
| predicted_HR | 0.216 | 0.003 |
| predicted_OBP | 0.324 | -0.007 |
| predicted_R | 0.892 | 0.029 |
| predicted_RBI | 0.766 | 0.025 |
| predicted_SLG | 0.396 | -0.009 |
| predicted_SO | 1.036 | -0.006 |
AB rounded to 7 (raw=7.36), rates preserved: AVG=0.270 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.276 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.357 |
| predicted_AVG | 0.286 | 0.015 |
| predicted_BB | 1.000 | 0.420 |
| predicted_H | 2.000 | 0.010 |
| predicted_HR | 0.000 | -0.216 |
| predicted_OBP | 0.375 | 0.051 |
| predicted_R | 1.000 | 0.108 |
| predicted_RBI | 1.000 | 0.234 |
| predicted_SLG | 0.286 | -0.110 |
| 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 | 5.000 | -2.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.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 | 6.000 | 2.000 | 0.000 | 1.000 | 2.000 | 4.000 | 1.000 | 3.000 | 0.3000 | 0.3636 | 0.5500 | 0.3000 | 0.0500 | 0.1000 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 9 | - | 42.000 | 12.000 | 2.000 | 0.000 | 1.000 | 2.000 | 6.000 | 2.000 | 4.000 | 0.2857 | 0.3333 | 0.4048 | 0.2857 | 0.0238 | 0.0476 | 0.0476 | 0.0952 |
| season | 0.60 | 61 | - | 947.000 | 253.000 | 24.000 | 0.000 | 23.000 | 110.000 | 97.000 | 87.000 | 143.000 | 0.2672 | 0.3314 | 0.3654 | 0.2672 | 0.0243 | 0.1162 | 0.0919 | 0.1510 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4970 |
| predicted_3B | 0.0010 |
| predicted_AB | 11.1060 |
| predicted_AVG | 0.2764 |
| predicted_BB | 0.8420 |
| predicted_H | 3.0690 |
| predicted_HBP | 0.2010 |
| predicted_HR | 0.3300 |
| predicted_OBP | 0.3377 |
| predicted_R | 1.4380 |
| predicted_RBI | 1.1350 |
| predicted_SLG | 0.4104 |
| predicted_SO | 1.5960 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1010 | 0.4970 | 0.2760 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3900 | 11.1060 | 7.3574 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2764 | 0.2572 | model_form_blend |
| predicted_BB | 0.3670 | 0.8420 | 0.5769 | model_form_blend |
| predicted_H | 1.0700 | 3.0690 | 1.9532 | model_form_blend |
| predicted_HBP | - | 0.2010 | 0.2010 | form_only |
| predicted_HR | 0.1200 | 0.3300 | 0.2128 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3377 | 0.3306 | model_form_blend |
| predicted_R | 0.4090 | 1.4380 | 0.8637 | model_form_blend |
| predicted_RBI | 0.4300 | 1.1350 | 0.7415 | model_form_blend |
| predicted_SLG | 0.4010 | 0.4104 | 0.4052 | model_form_blend |
| predicted_SO | 0.6030 | 1.5960 | 1.0417 | 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 | 237 |
| 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 | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.267 |
| 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 | 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 | 1 |
| 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 | 1B |
| gameID | 20260607_SEA@DET |
| game_type | full |
| mlbID | 647304 |
| playerID | 647304 |
| playerName | Josh Naylor |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 13.5 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.304 |
| sl_xwoba | 0.327 |
| sl_xba | 0.276 |
| sl_xslg | 0.409 |
| sl_sweet_spot_percent | 31.1 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 38.3 |
| sl_exit_velocity_avg | 87.8 |
| sl_launch_angle_avg | 14.1 |
| sl_whiff_percent | 20.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.155 | 0.000 | 0.000 | Hitting_2B | 0.154 | 1.000 | -0.154 | -1.000 |
| predicted_3B | 0.031 | 0.000 | 0.000 | Hitting_3B | 0.031 | 0.000 | -0.031 | 0.000 |
| predicted_AB | 3.441 | 5.000 | 5.000 | Hitting_AB | 3.420 | 4.000 | 1.580 | 1.000 |
| predicted_AVG | 0.246 | 0.200 | 0.200 | Hitting_AVG | 0.292 | 0.500 | -0.092 | -0.300 |
| predicted_BB | 0.161 | 0.000 | 0.000 | Hitting_BB | 0.160 | 0.000 | -0.160 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_H | 0.730 | 1.000 | 1.000 | Hitting_H | 1.000 | 2.000 | 0.000 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.290 | 0.000 | -0.290 | 0.000 |
| predicted_OBP | 0.286 | 0.200 | 0.200 | Hitting_OBP | 0.347 | 0.500 | -0.147 | -0.300 |
| predicted_R | 0.522 | 1.000 | 1.000 | Hitting_R | 0.519 | 0.000 | 0.481 | 1.000 |
| predicted_RBI | 0.390 | 1.000 | 1.000 | Hitting_RBI | 0.790 | 0.000 | 0.210 | 1.000 |
| predicted_SLG | 0.433 | 0.200 | 0.200 | Hitting_SLG | 0.610 | 0.750 | -0.410 | -0.550 |
| predicted_SO | 1.186 | 1.000 | 2.000 | Hitting_SO | 1.179 | 2.000 | -0.179 | -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_AB: 3.4410 -> 5.0000 (boost 1.5590, better) |
| Biggest Deboost | predicted_SO: 1.1860 -> 1.0000 (deboost -0.1860, 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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.4410 -> 4.9254 (boost 1.4844, 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.2871 -> 0.2644 (deboost -0.0227, 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.6904 -> 1.0000 (boost 0.3096, better) | predicted_HR: 0.2738 -> 0.0000 (deboost -0.2738, worse) | AB rounded to 5 (raw=4.93), rates preserved: AVG=0.234 HR/AB=0.056 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6267 -> 1.0000 (boost 0.3733, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4597 -> 0.2000 (deboost -0.2597, 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: 2.0000 -> 1.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.2000 -> 0.4597 (boost 0.2597, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670042",
"player_name": "Luke Raley",
"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.155,
"predicted_3B": 0.031,
"predicted_AB": 3.441,
"predicted_AVG": 0.246,
"predicted_BB": 0.161,
"predicted_H": 0.73,
"predicted_HR": 0.15,
"predicted_OBP": 0.286,
"predicted_R": 0.522,
"predicted_RBI": 0.39,
"predicted_SLG": 0.433,
"predicted_SO": 1.186
},
"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.2208,
"predicted_3B": 0.0336,
"predicted_AB": 4.9254,
"predicted_AVG": 0.2442,
"predicted_BB": 0.1994,
"predicted_H": 1.1334,
"predicted_HBP": 0.226,
"predicted_HR": 0.2695,
"predicted_OBP": 0.2871,
"predicted_R": 0.6066,
"predicted_RBI": 0.6682,
"predicted_SLG": 0.4549,
"predicted_SO": 1.7363
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.155,
"after": 0.2208,
"delta": 0.0658,
"percent_delta": 0.4245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0336,
"delta": 0.0026,
"percent_delta": 0.0839,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.441,
"after": 4.9254,
"delta": 1.4844,
"percent_delta": 0.4314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2442,
"delta": -0.0018,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.161,
"after": 0.1994,
"delta": 0.0384,
"percent_delta": 0.2385,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.73,
"after": 1.1334,
"delta": 0.4034,
"percent_delta": 0.5526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2695,
"delta": 0.1195,
"percent_delta": 0.7967,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2871,
"delta": 0.0011,
"percent_delta": 0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.522,
"after": 0.6066,
"delta": 0.0846,
"percent_delta": 0.1621,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.6682,
"delta": 0.2782,
"percent_delta": 0.7133,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.433,
"after": 0.4549,
"delta": 0.0219,
"percent_delta": 0.0506,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.186,
"after": 1.7363,
"delta": 0.5503,
"percent_delta": 0.464,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.441,
"after": 4.9254,
"delta": 1.4844,
"percent_delta": 0.4314,
"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.2208,
"predicted_3B": 0.0336,
"predicted_AB": 4.9254,
"predicted_AVG": 0.2345,
"predicted_BB": 0.2005,
"predicted_H": 1.1548,
"predicted_HBP": 0.226,
"predicted_HR": 0.2738,
"predicted_OBP": 0.2644,
"predicted_R": 0.6267,
"predicted_RBI": 0.6904,
"predicted_SLG": 0.4597,
"predicted_SO": 1.7264
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2208,
"after": 0.2208,
"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": 4.9254,
"after": 4.9254,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2442,
"after": 0.2345,
"delta": -0.0097,
"percent_delta": -0.0397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1994,
"after": 0.2005,
"delta": 0.0011,
"percent_delta": 0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1334,
"after": 1.1548,
"delta": 0.0214,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.226,
"after": 0.226,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2695,
"after": 0.2738,
"delta": 0.0043,
"percent_delta": 0.016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2871,
"after": 0.2644,
"delta": -0.0227,
"percent_delta": -0.0791,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6066,
"after": 0.6267,
"delta": 0.0201,
"percent_delta": 0.0331,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6682,
"after": 0.6904,
"delta": 0.0222,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4549,
"after": 0.4597,
"delta": 0.0048,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.7363,
"after": 1.7264,
"delta": -0.0099,
"percent_delta": -0.0057,
"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.2871,
"after": 0.2644,
"delta": -0.0227,
"percent_delta": -0.0791,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.93), rates preserved: AVG=0.234 HR/AB=0.056",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2208,
"after": 0.0,
"delta": -0.2208,
"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": 4.9254,
"after": 5.0,
"delta": 0.0746,
"percent_delta": 0.0151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2005,
"after": 0.0,
"delta": -0.2005,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1548,
"after": 1.0,
"delta": -0.1548,
"percent_delta": -0.134,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.226,
"after": 0.0,
"delta": -0.226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2738,
"after": 0.0,
"delta": -0.2738,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6904,
"after": 1.0,
"delta": 0.3096,
"percent_delta": 0.4484,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7264,
"after": 2.0,
"delta": 0.2736,
"percent_delta": 0.1585,
"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.6904,
"after": 1.0,
"delta": 0.3096,
"percent_delta": 0.4484,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2738,
"after": 0.0,
"delta": -0.2738,
"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": 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_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6267,
"after": 1.0,
"delta": 0.3733,
"percent_delta": 0.5957,
"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": 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_R",
"before": 0.6267,
"after": 1.0,
"delta": 0.3733,
"percent_delta": 0.5957,
"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": 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.2345,
"after": 0.2,
"delta": -0.0345,
"percent_delta": -0.1471,
"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.2644,
"after": 0.2,
"delta": -0.0644,
"percent_delta": -0.2436,
"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.4597,
"after": 0.2,
"delta": -0.2597,
"percent_delta": -0.5649,
"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_SLG",
"before": 0.4597,
"after": 0.2,
"delta": -0.2597,
"percent_delta": -0.5649,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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.2345,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2644,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4597,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2,
"after": 0.2345,
"delta": 0.0345,
"percent_delta": 0.1723,
"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.2644,
"delta": 0.0644,
"percent_delta": 0.3221,
"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.4597,
"delta": 0.2597,
"percent_delta": 1.2986,
"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.4597,
"delta": 0.2597,
"percent_delta": 1.2986,
"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.155,
"after": 0.0,
"delta": -0.155,
"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.441,
"after": 5.0,
"delta": 1.559,
"percent_delta": 0.4531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2345,
"delta": -0.0115,
"percent_delta": -0.0467,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.161,
"after": 0.0,
"delta": -0.161,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.73,
"after": 1.0,
"delta": 0.27,
"percent_delta": 0.3699,
"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.286,
"after": 0.2644,
"delta": -0.0216,
"percent_delta": -0.0755,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 0.39,
"after": 1.0,
"delta": 0.61,
"percent_delta": 1.5641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.433,
"after": 0.4597,
"delta": 0.0267,
"percent_delta": 0.0617,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.186,
"after": 1.0,
"delta": -0.186,
"percent_delta": -0.1568,
"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_AB",
"before": 3.441,
"after": 5.0,
"delta": 1.559,
"percent_delta": 0.4531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.186,
"after": 1.0,
"delta": -0.186,
"percent_delta": -0.1568,
"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.155 | - |
| predicted_3B | 0.031 | - |
| predicted_AB | 3.441 | - |
| predicted_AVG | 0.246 | - |
| predicted_BB | 0.161 | - |
| predicted_H | 0.730 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.286 | - |
| predicted_R | 0.522 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.433 | - |
| predicted_SO | 1.186 | - |
Final model 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.221 | 0.066 |
| predicted_3B | 0.034 | 0.003 |
| predicted_AB | 4.925 | 1.484 |
| predicted_AVG | 0.244 | -0.002 |
| predicted_BB | 0.199 | 0.038 |
| predicted_H | 1.133 | 0.403 |
| predicted_HBP | 0.226 | - |
| predicted_HR | 0.270 | 0.120 |
| predicted_OBP | 0.287 | 0.001 |
| predicted_R | 0.607 | 0.085 |
| predicted_RBI | 0.668 | 0.278 |
| predicted_SLG | 0.455 | 0.022 |
| predicted_SO | 1.736 | 0.550 |
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.221 | 0.000 |
| predicted_3B | 0.034 | 0.000 |
| predicted_AB | 4.925 | 0.000 |
| predicted_AVG | 0.234 | -0.010 |
| predicted_BB | 0.201 | 0.001 |
| predicted_H | 1.155 | 0.021 |
| predicted_HBP | 0.226 | 0.000 |
| predicted_HR | 0.274 | 0.004 |
| predicted_OBP | 0.264 | -0.023 |
| predicted_R | 0.627 | 0.020 |
| predicted_RBI | 0.690 | 0.022 |
| predicted_SLG | 0.460 | 0.005 |
| predicted_SO | 1.726 | -0.010 |
AB rounded to 5 (raw=4.93), rates preserved: AVG=0.234 HR/AB=0.056
| 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 | 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 | 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 | 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.221 |
| predicted_3B | 0.000 | -0.034 |
| predicted_AB | 5.000 | 0.075 |
| predicted_AVG | 0.200 | -0.034 |
| predicted_BB | 0.000 | -0.201 |
| predicted_H | 1.000 | -0.155 |
| predicted_HR | 0.000 | -0.274 |
| predicted_OBP | 0.200 | -0.064 |
| predicted_R | 1.000 | 0.373 |
| predicted_RBI | 1.000 | 0.310 |
| predicted_SLG | 0.200 | -0.260 |
| predicted_SO | 2.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 | 5.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 | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.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 | 2.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 8.000 | 0.1111 | 0.1111 | 0.1667 | 0.1111 | 0.0000 | 0.0000 | 0.0000 | 0.4444 |
| last_10 | 0.20 | 10 | - | 32.000 | 7.000 | 1.000 | 0.000 | 2.000 | 2.000 | 2.000 | 1.000 | 11.000 | 0.2188 | 0.2857 | 0.4375 | 0.2188 | 0.0625 | 0.0625 | 0.0312 | 0.3438 |
| season | 0.60 | 59 | - | 554.000 | 162.000 | 25.000 | 5.000 | 47.000 | 128.000 | 84.000 | 26.000 | 191.000 | 0.2924 | 0.3467 | 0.6101 | 0.2924 | 0.0848 | 0.2311 | 0.0469 | 0.3448 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3060 |
| predicted_3B | 0.0370 |
| predicted_AB | 6.8450 |
| predicted_AVG | 0.2418 |
| predicted_BB | 0.2490 |
| predicted_H | 1.6550 |
| predicted_HBP | 0.2260 |
| predicted_HR | 0.4240 |
| predicted_OBP | 0.2886 |
| predicted_R | 0.7160 |
| predicted_RBI | 1.0280 |
| predicted_SLG | 0.4832 |
| predicted_SO | 2.4480 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1550 | 0.3060 | 0.2208 | model_form_blend |
| predicted_3B | 0.0310 | 0.0370 | 0.0336 | model_form_blend |
| predicted_AB | 3.4410 | 6.8450 | 4.9254 | model_form_blend |
| predicted_AVG | 0.2460 | 0.2418 | 0.2442 | model_form_blend |
| predicted_BB | 0.1610 | 0.2490 | 0.1994 | model_form_blend |
| predicted_H | 0.7300 | 1.6550 | 1.1334 | model_form_blend |
| predicted_HBP | - | 0.2260 | 0.2260 | form_only |
| predicted_HR | 0.1500 | 0.4240 | 0.2695 | model_form_blend |
| predicted_OBP | 0.2860 | 0.2886 | 0.2871 | model_form_blend |
| predicted_R | 0.5220 | 0.7160 | 0.6066 | model_form_blend |
| predicted_RBI | 0.3900 | 1.0280 | 0.6682 | model_form_blend |
| predicted_SLG | 0.4330 | 0.4832 | 0.4549 | model_form_blend |
| predicted_SO | 1.1860 | 2.4480 | 1.7363 | 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 | 161 |
| 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 | 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 | 1 |
| 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 | 1 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| 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 | RF |
| gameID | 20260607_SEA@DET |
| game_type | full |
| mlbID | 670042 |
| playerID | 670042 |
| playerName | Luke Raley |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 33.2 |
| sl_bb_percent | 4.8 |
| sl_woba | 0.368 |
| sl_xwoba | 0.374 |
| sl_xba | 0.265 |
| sl_xslg | 0.554 |
| sl_sweet_spot_percent | 40.0 |
| sl_barrel_batted_rate | 19.1 |
| sl_hard_hit_percent | 46.4 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 15.8 |
| sl_whiff_percent | 42.1 |
| sl_swing_percent | 54.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.261 | 0.000 | 0.000 | Hitting_2B | 0.257 | 0.000 | -0.257 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.948 | 2.000 | 4.000 | Hitting_AB | 2.904 | 2.000 | -0.904 | 0.000 |
| predicted_AVG | 0.298 | 0.000 | 0.250 | Hitting_AVG | 0.271 | 0.000 | -0.271 | 0.000 |
| predicted_BB | 0.269 | 2.000 | 0.000 | Hitting_BB | 0.279 | 0.000 | 1.721 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.015 | 0.000 | -0.015 | 0.000 |
| predicted_H | 0.740 | 0.000 | 1.000 | Hitting_H | 0.787 | 0.000 | -0.787 | 0.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_OBP | 0.347 | 0.500 | 0.250 | Hitting_OBP | 0.337 | 0.000 | 0.163 | 0.500 |
| predicted_R | 0.470 | 0.000 | 1.000 | Hitting_R | 0.471 | 0.000 | -0.471 | 0.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.640 | 0.000 | -0.640 | 0.000 |
| predicted_SLG | 0.526 | 0.000 | 0.250 | Hitting_SLG | 0.542 | 0.000 | -0.542 | 0.000 |
| predicted_SO | 0.709 | 1.000 | 1.000 | Hitting_SO | 0.699 | 0.000 | 0.301 | 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.2690 -> 2.0000 (boost 1.7310, better) |
| Biggest Deboost | predicted_AB: 2.9480 -> 2.0000 (deboost -0.9480, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 2.9480 -> 4.0081 (boost 1.0601, 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.5709 -> 0.5811 (boost 0.0102, better) | predicted_AVG: 0.3120 -> 0.3028 (deboost -0.0092, 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.7211 -> 1.0000 (boost 0.2789, better) | predicted_2B: 0.3300 -> 0.0000 (deboost -0.3300, worse) | AB rounded to 4 (raw=4.01), rates preserved: AVG=0.303 HR/AB=0.065 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6920 -> 1.0000 (boost 0.3080, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5811 -> 0.2500 (deboost -0.3311, 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_BB: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_AB: 4.0000 -> 2.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.5811 (boost 0.3311, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686527",
"player_name": "Dominic Canzone",
"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.261,
"predicted_3B": 0.0,
"predicted_AB": 2.948,
"predicted_AVG": 0.298,
"predicted_BB": 0.269,
"predicted_H": 0.74,
"predicted_HR": 0.15,
"predicted_OBP": 0.347,
"predicted_R": 0.47,
"predicted_RBI": 0.43,
"predicted_SLG": 0.526,
"predicted_SO": 0.709
},
"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.33,
"predicted_3B": 0.0004,
"predicted_AB": 4.0081,
"predicted_AVG": 0.312,
"predicted_BB": 0.2983,
"predicted_H": 1.1913,
"predicted_HBP": 0.042,
"predicted_HR": 0.2574,
"predicted_OBP": 0.3585,
"predicted_R": 0.6698,
"predicted_RBI": 0.6979,
"predicted_SLG": 0.5709,
"predicted_SO": 0.9109
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.261,
"after": 0.33,
"delta": 0.069,
"percent_delta": 0.2644,
"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": 2.948,
"after": 4.0081,
"delta": 1.0601,
"percent_delta": 0.3596,
"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.269,
"after": 0.2983,
"delta": 0.0293,
"percent_delta": 0.1089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 1.1913,
"delta": 0.4513,
"percent_delta": 0.6099,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2574,
"delta": 0.1074,
"percent_delta": 0.716,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3585,
"delta": 0.0115,
"percent_delta": 0.0331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.47,
"after": 0.6698,
"delta": 0.1998,
"percent_delta": 0.4251,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.6979,
"delta": 0.2679,
"percent_delta": 0.623,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.526,
"after": 0.5709,
"delta": 0.0449,
"percent_delta": 0.0854,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.709,
"after": 0.9109,
"delta": 0.2019,
"percent_delta": 0.2848,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.948,
"after": 4.0081,
"delta": 1.0601,
"percent_delta": 0.3596,
"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": 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.33,
"predicted_3B": 0.0004,
"predicted_AB": 4.0081,
"predicted_AVG": 0.3028,
"predicted_BB": 0.3,
"predicted_H": 1.2138,
"predicted_HBP": 0.042,
"predicted_HR": 0.2615,
"predicted_OBP": 0.3514,
"predicted_R": 0.692,
"predicted_RBI": 0.7211,
"predicted_SLG": 0.5811,
"predicted_SO": 0.9057
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.33,
"after": 0.33,
"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.0081,
"after": 4.0081,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.312,
"after": 0.3028,
"delta": -0.0092,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2983,
"after": 0.3,
"delta": 0.0017,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1913,
"after": 1.2138,
"delta": 0.0225,
"percent_delta": 0.0189,
"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.2574,
"after": 0.2615,
"delta": 0.0041,
"percent_delta": 0.0159,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3585,
"after": 0.3514,
"delta": -0.0071,
"percent_delta": -0.0198,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6698,
"after": 0.692,
"delta": 0.0222,
"percent_delta": 0.0331,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6979,
"after": 0.7211,
"delta": 0.0232,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5709,
"after": 0.5811,
"delta": 0.0102,
"percent_delta": 0.0179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9109,
"after": 0.9057,
"delta": -0.0052,
"percent_delta": -0.0057,
"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.5709,
"after": 0.5811,
"delta": 0.0102,
"percent_delta": 0.0179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.312,
"after": 0.3028,
"delta": -0.0092,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.01), rates preserved: AVG=0.303 HR/AB=0.065",
"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.33,
"after": 0.0,
"delta": -0.33,
"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.0081,
"after": 4.0,
"delta": -0.0081,
"percent_delta": -0.002,
"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": 1.2138,
"after": 1.0,
"delta": -0.2138,
"percent_delta": -0.1761,
"direction": "deboost",
"projection_effect": "worse",
"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.2615,
"after": 0.0,
"delta": -0.2615,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7211,
"after": 1.0,
"delta": 0.2789,
"percent_delta": 0.3868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9057,
"after": 1.0,
"delta": 0.0943,
"percent_delta": 0.1041,
"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.7211,
"after": 1.0,
"delta": 0.2789,
"percent_delta": 0.3868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.33,
"after": 0.0,
"delta": -0.33,
"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.692,
"after": 1.0,
"delta": 0.308,
"percent_delta": 0.4451,
"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.692,
"after": 1.0,
"delta": 0.308,
"percent_delta": 0.4451,
"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.3028,
"after": 0.25,
"delta": -0.0528,
"percent_delta": -0.1744,
"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.3514,
"after": 0.25,
"delta": -0.1014,
"percent_delta": -0.2886,
"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.5811,
"after": 0.25,
"delta": -0.3311,
"percent_delta": -0.5698,
"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.5811,
"after": 0.25,
"delta": -0.3311,
"percent_delta": -0.5698,
"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": 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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"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": 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": 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": 2.0,
"delta": 2.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.3028,
"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.3514,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5811,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.3028,
"delta": 0.0528,
"percent_delta": 0.2114,
"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.3514,
"delta": 0.1014,
"percent_delta": 0.4056,
"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.5811,
"delta": 0.3311,
"percent_delta": 1.3245,
"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.5811,
"delta": 0.3311,
"percent_delta": 1.3245,
"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.261,
"after": 0.0,
"delta": -0.261,
"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.948,
"after": 2.0,
"delta": -0.948,
"percent_delta": -0.3216,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.298,
"after": 0.3028,
"delta": 0.0048,
"percent_delta": 0.0161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.269,
"after": 2.0,
"delta": 1.731,
"percent_delta": 6.4349,
"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.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3514,
"delta": 0.0044,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.526,
"after": 0.5811,
"delta": 0.0551,
"percent_delta": 0.1048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.709,
"after": 1.0,
"delta": 0.291,
"percent_delta": 0.4104,
"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.269,
"after": 2.0,
"delta": 1.731,
"percent_delta": 6.4349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 2.948,
"after": 2.0,
"delta": -0.948,
"percent_delta": -0.3216,
"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.261 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.948 | - |
| predicted_AVG | 0.298 | - |
| predicted_BB | 0.269 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.347 | - |
| predicted_R | 0.470 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.526 | - |
| predicted_SO | 0.709 | - |
Final model 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.330 | 0.069 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.008 | 1.060 |
| predicted_AVG | 0.312 | 0.014 |
| predicted_BB | 0.298 | 0.029 |
| predicted_H | 1.191 | 0.451 |
| predicted_HBP | 0.042 | - |
| predicted_HR | 0.257 | 0.107 |
| predicted_OBP | 0.358 | 0.012 |
| predicted_R | 0.670 | 0.200 |
| predicted_RBI | 0.698 | 0.268 |
| predicted_SLG | 0.571 | 0.045 |
| predicted_SO | 0.911 | 0.202 |
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.330 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.008 | 0.000 |
| predicted_AVG | 0.303 | -0.009 |
| predicted_BB | 0.300 | 0.002 |
| predicted_H | 1.214 | 0.022 |
| predicted_HBP | 0.042 | 0.000 |
| predicted_HR | 0.262 | 0.004 |
| predicted_OBP | 0.351 | -0.007 |
| predicted_R | 0.692 | 0.022 |
| predicted_RBI | 0.721 | 0.023 |
| predicted_SLG | 0.581 | 0.010 |
| predicted_SO | 0.906 | -0.005 |
AB rounded to 4 (raw=4.01), rates preserved: AVG=0.303 HR/AB=0.065
| 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.330 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.008 |
| predicted_AVG | 0.250 | -0.053 |
| predicted_BB | 0.000 | -0.300 |
| predicted_H | 1.000 | -0.214 |
| predicted_HR | 0.000 | -0.262 |
| predicted_OBP | 0.250 | -0.101 |
| predicted_R | 1.000 | 0.308 |
| predicted_RBI | 1.000 | 0.279 |
| predicted_SLG | 0.250 | -0.331 |
| predicted_SO | 1.000 | 0.094 |
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 | 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 | -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 | 7.000 | 1.000 | 0.000 | 1.000 | 2.000 | 3.000 | 0.000 | 2.000 | 0.4667 | 0.4667 | 0.7333 | 0.4667 | 0.0667 | 0.1333 | 0.0000 | 0.1333 |
| last_10 | 0.20 | 10 | - | 30.000 | 12.000 | 2.000 | 0.000 | 4.000 | 6.000 | 6.000 | 1.000 | 7.000 | 0.4000 | 0.4194 | 0.8667 | 0.4000 | 0.1333 | 0.2000 | 0.0333 | 0.2333 |
| season | 0.60 | 55 | - | 395.000 | 107.000 | 35.000 | 0.000 | 24.000 | 87.000 | 63.000 | 36.000 | 95.000 | 0.2709 | 0.3341 | 0.5418 | 0.2709 | 0.0608 | 0.2203 | 0.0911 | 0.2405 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4210 |
| predicted_3B | 0.0010 |
| predicted_AB | 5.4050 |
| predicted_AVG | 0.3304 |
| predicted_BB | 0.3370 |
| predicted_H | 1.7860 |
| predicted_HBP | 0.0420 |
| predicted_HR | 0.3990 |
| predicted_OBP | 0.3736 |
| predicted_R | 0.9330 |
| predicted_RBI | 1.0510 |
| predicted_SLG | 0.6301 |
| predicted_SO | 1.1770 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2610 | 0.4210 | 0.3300 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 2.9480 | 5.4050 | 4.0081 | model_form_blend |
| predicted_AVG | 0.2980 | 0.3304 | 0.3120 | model_form_blend |
| predicted_BB | 0.2690 | 0.3370 | 0.2983 | model_form_blend |
| predicted_H | 0.7400 | 1.7860 | 1.1913 | model_form_blend |
| predicted_HBP | - | 0.0420 | 0.0420 | form_only |
| predicted_HR | 0.1500 | 0.3990 | 0.2574 | model_form_blend |
| predicted_OBP | 0.3470 | 0.3736 | 0.3585 | model_form_blend |
| predicted_R | 0.4700 | 0.9330 | 0.6698 | model_form_blend |
| predicted_RBI | 0.4300 | 1.0510 | 0.6979 | model_form_blend |
| predicted_SLG | 0.5260 | 0.6301 | 0.5709 | model_form_blend |
| predicted_SO | 0.7090 | 1.1770 | 0.9109 | 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 | 136 |
| Season rows before report date | 136 |
| Report year | 2026 |
| Profile rows used | 134 |
| 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 | 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 | 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 | 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 | DH |
| gameID | 20260607_SEA@DET |
| game_type | full |
| mlbID | 686527 |
| playerID | 686527 |
| playerName | Dominic Canzone |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.7 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.371 |
| sl_xwoba | 0.377 |
| sl_xba | 0.286 |
| sl_xslg | 0.53 |
| sl_sweet_spot_percent | 38.9 |
| sl_barrel_batted_rate | 16.7 |
| sl_hard_hit_percent | 50.0 |
| sl_exit_velocity_avg | 93.6 |
| sl_launch_angle_avg | 13.3 |
| sl_whiff_percent | 29.8 |
| sl_swing_percent | 46.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.067 | 0.000 | 0.000 | Hitting_2B | 0.067 | 0.000 | -0.067 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.067 | 4.000 | 3.000 | Hitting_AB | 3.067 | 3.000 | 0.933 | 1.000 |
| predicted_AVG | 0.221 | 0.000 | 0.333 | Hitting_AVG | 0.087 | 0.333 | -0.087 | -0.333 |
| predicted_BB | 0.133 | 0.000 | 0.000 | Hitting_BB | 0.133 | 1.000 | -0.133 | -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.267 | 1.000 | -0.267 | -1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.067 | 0.000 | -0.067 | 0.000 |
| predicted_OBP | 0.260 | 0.000 | 0.333 | Hitting_OBP | 0.125 | 0.500 | -0.125 | -0.500 |
| predicted_R | 0.133 | 0.000 | 0.000 | Hitting_R | 0.133 | 0.000 | -0.133 | 0.000 |
| predicted_RBI | 0.180 | 0.000 | 0.000 | Hitting_RBI | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_SLG | 0.364 | 0.000 | 0.333 | Hitting_SLG | 0.174 | 0.333 | -0.174 | -0.333 |
| predicted_SO | 1.267 | 0.000 | 1.000 | Hitting_SO | 1.267 | 2.000 | -1.267 | -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_AB: 3.0670 -> 4.0000 (boost 0.9330, better) |
| Biggest Deboost | predicted_SO: 1.2670 -> 0.0000 (deboost -1.2670, 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 | 9 | 6 | 3 | 5 | 4 | predicted_AB: 3.0670 -> 3.4133 (boost 0.3463, better) | predicted_SLG: 0.3640 -> 0.3381 (deboost -0.0259, 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.3381 -> 0.2120 (deboost -0.1261, 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_AB: 3.4133 -> 3.0000 (deboost -0.4133, worse) | AB rounded to 3 (raw=3.41), rates preserved: AVG=0.116 HR/AB=0.024 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.2193 -> 0.0000 (deboost -0.2193, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1160 -> 0.3330 (boost 0.2170, 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.1160 (deboost -0.2170, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "621550",
"player_name": "Patrick Wisdom",
"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.067,
"predicted_3B": 0.0,
"predicted_AB": 3.067,
"predicted_AVG": 0.221,
"predicted_BB": 0.133,
"predicted_H": 0.26,
"predicted_HR": 0.05,
"predicted_OBP": 0.26,
"predicted_R": 0.133,
"predicted_RBI": 0.18,
"predicted_SLG": 0.364,
"predicted_SO": 1.267
},
"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.0829,
"predicted_3B": 0.002,
"predicted_AB": 3.4133,
"predicted_AVG": 0.1993,
"predicted_BB": 0.185,
"predicted_H": 0.3886,
"predicted_HBP": 0.014,
"predicted_HR": 0.079,
"predicted_OBP": 0.2445,
"predicted_R": 0.2123,
"predicted_RBI": 0.2951,
"predicted_SLG": 0.3381,
"predicted_SO": 1.3375
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.067,
"after": 0.0829,
"delta": 0.0159,
"percent_delta": 0.2373,
"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.067,
"after": 3.4133,
"delta": 0.3463,
"percent_delta": 0.1129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.221,
"after": 0.1993,
"delta": -0.0217,
"percent_delta": -0.0982,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.133,
"after": 0.185,
"delta": 0.052,
"percent_delta": 0.391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.26,
"after": 0.3886,
"delta": 0.1286,
"percent_delta": 0.4946,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.079,
"delta": 0.029,
"percent_delta": 0.58,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.26,
"after": 0.2445,
"delta": -0.0155,
"percent_delta": -0.0596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.133,
"after": 0.2123,
"delta": 0.0793,
"percent_delta": 0.5962,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.2951,
"delta": 0.1151,
"percent_delta": 0.6394,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3381,
"delta": -0.0259,
"percent_delta": -0.0712,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.267,
"after": 1.3375,
"delta": 0.0705,
"percent_delta": 0.0556,
"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_AB",
"before": 3.067,
"after": 3.4133,
"delta": 0.3463,
"percent_delta": 0.1129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3381,
"delta": -0.0259,
"percent_delta": -0.0712,
"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": 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.0829,
"predicted_3B": 0.002,
"predicted_AB": 3.4133,
"predicted_AVG": 0.116,
"predicted_BB": 0.1861,
"predicted_H": 0.3959,
"predicted_HBP": 0.014,
"predicted_HR": 0.0803,
"predicted_OBP": 0.1617,
"predicted_R": 0.2193,
"predicted_RBI": 0.3049,
"predicted_SLG": 0.212,
"predicted_SO": 1.3299
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0829,
"after": 0.0829,
"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.4133,
"after": 3.4133,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1993,
"after": 0.116,
"delta": -0.0833,
"percent_delta": -0.418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.185,
"after": 0.1861,
"delta": 0.0011,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3886,
"after": 0.3959,
"delta": 0.0073,
"percent_delta": 0.0188,
"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.079,
"after": 0.0803,
"delta": 0.0013,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2445,
"after": 0.1617,
"delta": -0.0828,
"percent_delta": -0.3387,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2123,
"after": 0.2193,
"delta": 0.007,
"percent_delta": 0.033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2951,
"after": 0.3049,
"delta": 0.0098,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3381,
"after": 0.212,
"delta": -0.1261,
"percent_delta": -0.373,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3375,
"after": 1.3299,
"delta": -0.0076,
"percent_delta": -0.0057,
"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.3381,
"after": 0.212,
"delta": -0.1261,
"percent_delta": -0.373,
"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.116 HR/AB=0.024",
"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.0829,
"after": 0.0,
"delta": -0.0829,
"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.4133,
"after": 3.0,
"delta": -0.4133,
"percent_delta": -0.1211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1861,
"after": 0.0,
"delta": -0.1861,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3959,
"after": 0.0,
"delta": -0.3959,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.0803,
"after": 0.0,
"delta": -0.0803,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3049,
"after": 0.0,
"delta": -0.3049,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3299,
"after": 1.0,
"delta": -0.3299,
"percent_delta": -0.2481,
"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_AB",
"before": 3.4133,
"after": 3.0,
"delta": -0.4133,
"percent_delta": -0.1211,
"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.2193,
"after": 0.0,
"delta": -0.2193,
"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.2193,
"after": 0.0,
"delta": -0.2193,
"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.116,
"after": 0.333,
"delta": 0.217,
"percent_delta": 1.8707,
"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.1617,
"after": 0.333,
"delta": 0.1713,
"percent_delta": 1.0594,
"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.212,
"after": 0.333,
"delta": 0.121,
"percent_delta": 0.5708,
"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.116,
"after": 0.333,
"delta": 0.217,
"percent_delta": 1.8707,
"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.116,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.1617,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.212,
"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.116,
"delta": -0.217,
"percent_delta": -0.6517,
"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.1617,
"delta": -0.1713,
"percent_delta": -0.5144,
"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.212,
"delta": -0.121,
"percent_delta": -0.3633,
"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.116,
"delta": -0.217,
"percent_delta": -0.6517,
"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": 3.067,
"after": 4.0,
"delta": 0.933,
"percent_delta": 0.3042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.221,
"after": 0.116,
"delta": -0.105,
"percent_delta": -0.4751,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.133,
"after": 0.0,
"delta": -0.133,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.26,
"after": 0.1617,
"delta": -0.0983,
"percent_delta": -0.3781,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.133,
"after": 0.0,
"delta": -0.133,
"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.364,
"after": 0.212,
"delta": -0.152,
"percent_delta": -0.4176,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.267,
"after": 0.0,
"delta": -1.267,
"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_AB",
"before": 3.067,
"after": 4.0,
"delta": 0.933,
"percent_delta": 0.3042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.267,
"after": 0.0,
"delta": -1.267,
"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.067 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.067 | - |
| predicted_AVG | 0.221 | - |
| predicted_BB | 0.133 | - |
| predicted_H | 0.260 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.260 | - |
| predicted_R | 0.133 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.364 | - |
| predicted_SO | 1.267 | - |
Final model 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.083 | 0.016 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.413 | 0.346 |
| predicted_AVG | 0.199 | -0.022 |
| predicted_BB | 0.185 | 0.052 |
| predicted_H | 0.389 | 0.129 |
| predicted_HBP | 0.014 | - |
| predicted_HR | 0.079 | 0.029 |
| predicted_OBP | 0.244 | -0.016 |
| predicted_R | 0.212 | 0.079 |
| predicted_RBI | 0.295 | 0.115 |
| predicted_SLG | 0.338 | -0.026 |
| predicted_SO | 1.337 | 0.071 |
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.083 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.413 | 0.000 |
| predicted_AVG | 0.116 | -0.083 |
| predicted_BB | 0.186 | 0.001 |
| predicted_H | 0.396 | 0.007 |
| predicted_HBP | 0.014 | 0.000 |
| predicted_HR | 0.080 | 0.001 |
| predicted_OBP | 0.162 | -0.083 |
| predicted_R | 0.219 | 0.007 |
| predicted_RBI | 0.305 | 0.010 |
| predicted_SLG | 0.212 | -0.126 |
| predicted_SO | 1.330 | -0.008 |
AB rounded to 3 (raw=3.41), rates preserved: AVG=0.116 HR/AB=0.024
| 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.083 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.413 |
| predicted_AVG | 0.333 | 0.217 |
| predicted_BB | 0.000 | -0.186 |
| predicted_H | 1.000 | 0.604 |
| predicted_HR | 0.000 | -0.080 |
| predicted_OBP | 0.333 | 0.171 |
| predicted_R | 0.000 | -0.219 |
| predicted_RBI | 0.000 | -0.305 |
| predicted_SLG | 0.333 | 0.121 |
| predicted_SO | 1.000 | -0.330 |
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 | - | 15.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 2.000 | 8.000 | 0.1333 | 0.2353 | 0.3333 | 0.1333 | 0.0667 | 0.1333 | 0.1333 | 0.5333 |
| last_10 | 0.20 | 7 | - | 32.000 | 3.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 2.000 | 16.000 | 0.0938 | 0.1471 | 0.1875 | 0.0938 | 0.0312 | 0.0625 | 0.0625 | 0.5000 |
| season | 0.60 | 10 | - | 46.000 | 4.000 | 1.000 | 0.000 | 1.000 | 6.000 | 2.000 | 2.000 | 19.000 | 0.0870 | 0.1250 | 0.1739 | 0.0870 | 0.0217 | 0.1304 | 0.0435 | 0.4130 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1140 |
| predicted_3B | 0.0060 |
| predicted_AB | 4.0930 |
| predicted_AVG | 0.1566 |
| predicted_BB | 0.2870 |
| predicted_H | 0.6410 |
| predicted_HBP | 0.0140 |
| predicted_HR | 0.1360 |
| predicted_OBP | 0.2141 |
| predicted_R | 0.3680 |
| predicted_RBI | 0.5210 |
| predicted_SLG | 0.2872 |
| predicted_SO | 1.4760 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0670 | 0.1140 | 0.0829 | model_form_blend |
| predicted_3B | 0.0000 | 0.0060 | 0.0020 | model_form_blend |
| predicted_AB | 3.0670 | 4.0930 | 3.4133 | model_form_blend |
| predicted_AVG | 0.2210 | 0.1566 | 0.1993 | model_form_blend |
| predicted_BB | 0.1330 | 0.2870 | 0.1850 | model_form_blend |
| predicted_H | 0.2600 | 0.6410 | 0.3886 | model_form_blend |
| predicted_HBP | - | 0.0140 | 0.0140 | form_only |
| predicted_HR | 0.0500 | 0.1360 | 0.0790 | model_form_blend |
| predicted_OBP | 0.2600 | 0.2141 | 0.2445 | model_form_blend |
| predicted_R | 0.1330 | 0.3680 | 0.2123 | model_form_blend |
| predicted_RBI | 0.1800 | 0.5210 | 0.2951 | model_form_blend |
| predicted_SLG | 0.3640 | 0.2872 | 0.3381 | model_form_blend |
| predicted_SO | 1.2670 | 1.4760 | 1.3375 | 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 | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 15 |
| 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.087 |
| 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 | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 1 |
| 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 | 3B |
| gameID | 20260607_SEA@DET |
| game_type | full |
| mlbID | 621550 |
| playerID | 621550 |
| playerName | Patrick Wisdom |
| pos | 1B |
| started | True |
| startingPosition | 3B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 43.3 |
| sl_bb_percent | 6.7 |
| sl_woba | 0.201 |
| sl_xwoba | 0.243 |
| sl_xba | 0.182 |
| sl_xslg | 0.355 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 20.0 |
| sl_hard_hit_percent | 53.3 |
| sl_exit_velocity_avg | 92.5 |
| sl_launch_angle_avg | 24.7 |
| sl_whiff_percent | 45.2 |
| sl_swing_percent | 54.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.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.222 | 3.000 | 4.000 | Hitting_AB | 3.222 | 4.000 | -0.222 | -1.000 |
| predicted_AVG | 0.272 | 0.000 | 0.250 | Hitting_AVG | 0.190 | 0.250 | -0.190 | -0.250 |
| predicted_BB | 0.333 | 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.810 | 0.000 | 1.000 | Hitting_H | 0.611 | 1.000 | -0.611 | -1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_OBP | 0.346 | 0.250 | 0.250 | Hitting_OBP | 0.288 | 0.250 | -0.038 | 0.000 |
| predicted_R | 0.389 | 0.000 | 1.000 | Hitting_R | 0.389 | 0.000 | -0.389 | 0.000 |
| predicted_RBI | 0.370 | 0.000 | 0.000 | Hitting_RBI | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_SLG | 0.429 | 0.000 | 0.250 | Hitting_SLG | 0.241 | 0.250 | -0.241 | -0.250 |
| predicted_SO | 0.528 | 0.000 | 1.000 | Hitting_SO | 0.528 | 0.000 | -0.528 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 10 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | - |
| Biggest Deboost | predicted_H: 0.8100 -> 0.0000 (deboost -0.8100, 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 | 5 | 2 | 4 | 3 | predicted_AB: 3.2220 -> 4.3327 (boost 1.1107, better) | predicted_SLG: 0.4290 -> 0.3977 (deboost -0.0313, 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.3977 -> 0.3621 (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 | 0 | 7 | predicted_SO: 0.6895 -> 1.0000 (boost 0.3105, worse) | predicted_BB: 0.4475 -> 0.0000 (deboost -0.4475, worse) | AB rounded to 4 (raw=4.33), rates preserved: AVG=0.258 HR/AB=0.033 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5254 -> 1.0000 (boost 0.4746, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3621 -> 0.2500 (deboost -0.1121, 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_HBP: 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.3621 (boost 0.1121, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "640902",
"player_name": "Jhonny Pereda",
"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.0,
"predicted_3B": 0.0,
"predicted_AB": 3.222,
"predicted_AVG": 0.272,
"predicted_BB": 0.333,
"predicted_H": 0.81,
"predicted_HR": 0.12,
"predicted_OBP": 0.346,
"predicted_R": 0.389,
"predicted_RBI": 0.37,
"predicted_SLG": 0.429,
"predicted_SO": 0.528
},
"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.0218,
"predicted_3B": 0.0016,
"predicted_AB": 4.3327,
"predicted_AVG": 0.265,
"predicted_BB": 0.445,
"predicted_H": 1.0958,
"predicted_HBP": 0.126,
"predicted_HR": 0.1402,
"predicted_OBP": 0.3426,
"predicted_R": 0.5085,
"predicted_RBI": 0.4171,
"predicted_SLG": 0.3977,
"predicted_SO": 0.6935
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0218,
"delta": 0.0218,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0016,
"delta": 0.0016,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.222,
"after": 4.3327,
"delta": 1.1107,
"percent_delta": 0.3447,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.265,
"delta": -0.007,
"percent_delta": -0.0257,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.445,
"delta": 0.112,
"percent_delta": 0.3363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.0958,
"delta": 0.2858,
"percent_delta": 0.3528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1402,
"delta": 0.0202,
"percent_delta": 0.1683,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.346,
"after": 0.3426,
"delta": -0.0034,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.389,
"after": 0.5085,
"delta": 0.1195,
"percent_delta": 0.3072,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.4171,
"delta": 0.0471,
"percent_delta": 0.1273,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.429,
"after": 0.3977,
"delta": -0.0313,
"percent_delta": -0.073,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.528,
"after": 0.6935,
"delta": 0.1655,
"percent_delta": 0.3134,
"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_AB",
"before": 3.222,
"after": 4.3327,
"delta": 1.1107,
"percent_delta": 0.3447,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.429,
"after": 0.3977,
"delta": -0.0313,
"percent_delta": -0.073,
"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": 15
}
},
{
"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.0218,
"predicted_3B": 0.0016,
"predicted_AB": 4.3327,
"predicted_AVG": 0.2577,
"predicted_BB": 0.4475,
"predicted_H": 1.1165,
"predicted_HBP": 0.126,
"predicted_HR": 0.1425,
"predicted_OBP": 0.3272,
"predicted_R": 0.5254,
"predicted_RBI": 0.4309,
"predicted_SLG": 0.3621,
"predicted_SO": 0.6895
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0218,
"after": 0.0218,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0016,
"after": 0.0016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.3327,
"after": 4.3327,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2577,
"delta": -0.0073,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.445,
"after": 0.4475,
"delta": 0.0025,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0958,
"after": 1.1165,
"delta": 0.0207,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.126,
"after": 0.126,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1402,
"after": 0.1425,
"delta": 0.0023,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3426,
"after": 0.3272,
"delta": -0.0154,
"percent_delta": -0.045,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5085,
"after": 0.5254,
"delta": 0.0169,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4171,
"after": 0.4309,
"delta": 0.0138,
"percent_delta": 0.0331,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3977,
"after": 0.3621,
"delta": -0.0356,
"percent_delta": -0.0895,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6935,
"after": 0.6895,
"delta": -0.004,
"percent_delta": -0.0058,
"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.3977,
"after": 0.3621,
"delta": -0.0356,
"percent_delta": -0.0895,
"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.258 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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0218,
"after": 0.0,
"delta": -0.0218,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0016,
"after": 0.0,
"delta": -0.0016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.3327,
"after": 4.0,
"delta": -0.3327,
"percent_delta": -0.0768,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4475,
"after": 0.0,
"delta": -0.4475,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1165,
"after": 1.0,
"delta": -0.1165,
"percent_delta": -0.1043,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.126,
"after": 0.0,
"delta": -0.126,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1425,
"after": 0.0,
"delta": -0.1425,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4309,
"after": 0.0,
"delta": -0.4309,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6895,
"after": 1.0,
"delta": 0.3105,
"percent_delta": 0.4503,
"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.6895,
"after": 1.0,
"delta": 0.3105,
"percent_delta": 0.4503,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4475,
"after": 0.0,
"delta": -0.4475,
"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.5254,
"after": 1.0,
"delta": 0.4746,
"percent_delta": 0.9033,
"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.5254,
"after": 1.0,
"delta": 0.4746,
"percent_delta": 0.9033,
"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.2577,
"after": 0.25,
"delta": -0.0077,
"percent_delta": -0.0299,
"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.3272,
"after": 0.25,
"delta": -0.0772,
"percent_delta": -0.2359,
"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.3621,
"after": 0.25,
"delta": -0.1121,
"percent_delta": -0.3096,
"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.3621,
"after": 0.25,
"delta": -0.1121,
"percent_delta": -0.3096,
"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": 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": 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": 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_HBP",
"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.2577,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3272,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3621,
"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.2577,
"delta": 0.0077,
"percent_delta": 0.0308,
"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": 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.3272,
"delta": 0.0772,
"percent_delta": 0.3088,
"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.3621,
"delta": 0.1121,
"percent_delta": 0.4484,
"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.3621,
"delta": 0.1121,
"percent_delta": 0.4484,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.222,
"after": 3.0,
"delta": -0.222,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2577,
"delta": -0.0143,
"percent_delta": -0.0526,
"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.81,
"after": 0.0,
"delta": -0.81,
"percent_delta": -1.0,
"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.346,
"after": 0.3272,
"delta": -0.0188,
"percent_delta": -0.0543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.389,
"after": 0.0,
"delta": -0.389,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.429,
"after": 0.3621,
"delta": -0.0669,
"percent_delta": -0.1559,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.528,
"after": 0.0,
"delta": -0.528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 0,
"deboosted_metrics": 10,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"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.222 | - |
| predicted_AVG | 0.272 | - |
| predicted_BB | 0.333 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.346 | - |
| predicted_R | 0.389 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.429 | - |
| predicted_SO | 0.528 | - |
Final model 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.022 | 0.022 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 4.333 | 1.111 |
| predicted_AVG | 0.265 | -0.007 |
| predicted_BB | 0.445 | 0.112 |
| predicted_H | 1.096 | 0.286 |
| predicted_HBP | 0.126 | - |
| predicted_HR | 0.140 | 0.020 |
| predicted_OBP | 0.343 | -0.003 |
| predicted_R | 0.508 | 0.119 |
| predicted_RBI | 0.417 | 0.047 |
| predicted_SLG | 0.398 | -0.031 |
| predicted_SO | 0.694 | 0.165 |
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.022 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 4.333 | 0.000 |
| predicted_AVG | 0.258 | -0.007 |
| predicted_BB | 0.448 | 0.003 |
| predicted_H | 1.117 | 0.021 |
| predicted_HBP | 0.126 | 0.000 |
| predicted_HR | 0.142 | 0.002 |
| predicted_OBP | 0.327 | -0.015 |
| predicted_R | 0.525 | 0.017 |
| predicted_RBI | 0.431 | 0.014 |
| predicted_SLG | 0.362 | -0.036 |
| predicted_SO | 0.690 | -0.004 |
AB rounded to 4 (raw=4.33), rates preserved: AVG=0.258 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 | 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.022 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | -0.333 |
| predicted_AVG | 0.250 | -0.008 |
| predicted_BB | 0.000 | -0.448 |
| predicted_H | 1.000 | -0.117 |
| predicted_HR | 0.000 | -0.142 |
| predicted_OBP | 0.250 | -0.077 |
| predicted_R | 1.000 | 0.475 |
| predicted_RBI | 0.000 | -0.431 |
| predicted_SLG | 0.250 | -0.112 |
| predicted_SO | 1.000 | 0.310 |
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 | 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 | -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 | 8.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 1.000 | 2.000 | 0.4444 | 0.4737 | 0.6111 | 0.4444 | 0.0556 | 0.1667 | 0.0556 | 0.1111 |
| last_10 | 0.20 | 7 | - | 33.000 | 9.000 | 0.000 | 0.000 | 1.000 | 3.000 | 6.000 | 9.000 | 2.000 | 0.2727 | 0.4286 | 0.3636 | 0.2727 | 0.0303 | 0.0909 | 0.2727 | 0.0606 |
| season | 0.60 | 15 | - | 116.000 | 22.000 | 0.000 | 0.000 | 2.000 | 4.000 | 14.000 | 12.000 | 19.000 | 0.1897 | 0.2879 | 0.2414 | 0.1897 | 0.0172 | 0.0345 | 0.1035 | 0.1638 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0550 |
| predicted_3B | 0.0040 |
| predicted_AB | 6.0280 |
| predicted_AVG | 0.2542 |
| predicted_BB | 0.6160 |
| predicted_H | 1.5320 |
| predicted_HBP | 0.1260 |
| predicted_HR | 0.1710 |
| predicted_OBP | 0.3374 |
| predicted_R | 0.6910 |
| predicted_RBI | 0.4890 |
| predicted_SLG | 0.3499 |
| predicted_SO | 0.9460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0550 | 0.0218 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0016 | model_form_blend |
| predicted_AB | 3.2220 | 6.0280 | 4.3327 | model_form_blend |
| predicted_AVG | 0.2720 | 0.2542 | 0.2650 | model_form_blend |
| predicted_BB | 0.3330 | 0.6160 | 0.4450 | model_form_blend |
| predicted_H | 0.8100 | 1.5320 | 1.0958 | model_form_blend |
| predicted_HBP | - | 0.1260 | 0.1260 | form_only |
| predicted_HR | 0.1200 | 0.1710 | 0.1402 | model_form_blend |
| predicted_OBP | 0.3460 | 0.3374 | 0.3426 | model_form_blend |
| predicted_R | 0.3890 | 0.6910 | 0.5085 | model_form_blend |
| predicted_RBI | 0.3700 | 0.4890 | 0.4171 | model_form_blend |
| predicted_SLG | 0.4290 | 0.3499 | 0.3977 | model_form_blend |
| predicted_SO | 0.5280 | 0.9460 | 0.6935 | 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 | 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| 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 | 1 |
| 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 | 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 | 20260607_SEA@DET |
| game_type | full |
| mlbID | 640902 |
| playerID | 640902 |
| playerName | Jhonny Pereda |
| pos | C |
| started | True |
| startingPosition | C |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 13.2 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.348 |
| sl_xwoba | 0.38 |
| sl_xba | 0.335 |
| sl_xslg | 0.465 |
| sl_sweet_spot_percent | 48.8 |
| sl_barrel_batted_rate | 4.9 |
| sl_hard_hit_percent | 48.8 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 13.1 |
| sl_whiff_percent | 17.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.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 | 2.000 | 2.000 | 2.000 | 2.000 |
| predicted_AVG | 0.272 | 0.500 | 0.333 | Hitting_AVG | 0.000 | 0.000 | 0.500 | 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.190 | 2.000 | 1.000 | Hitting_H | 0.000 | 0.000 | 2.000 | 2.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.277 | 0.500 | 0.333 | Hitting_OBP | 0.000 | 0.000 | 0.500 | 0.500 |
| predicted_R | 0.000 | 1.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_RBI | 0.120 | 1.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.381 | 0.500 | 0.333 | Hitting_SLG | 0.000 | 0.000 | 0.500 | 0.500 |
| predicted_SO | 2.500 | 1.000 | 2.000 | Hitting_SO | 2.000 | 2.000 | -1.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 8 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 4 |
| Better Metrics | 5 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_H: 0.1900 -> 2.0000 (boost 1.8100, better) |
| Biggest Deboost | predicted_SO: 2.5000 -> 1.0000 (deboost -1.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 | 7 | 5 | 2 | 6 | 1 | predicted_AB: 2.5000 -> 2.7652 (boost 0.2652, better) | predicted_SO: 2.5000 -> 2.2528 (deboost -0.2472, 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.3770 -> 0.1819 (deboost -0.1951, 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_AB: 2.7652 -> 3.0000 (boost 0.2348, better) | predicted_H: 0.3240 -> 0.0000 (deboost -0.3240, worse) | AB rounded to 3 (raw=2.77), rates preserved: AVG=0.117 HR/AB=0.017 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.0872 -> 0.0000 (deboost -0.0872, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1172 -> 0.3330 (boost 0.2158, 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_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_SO: 2.0000 -> 1.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.1172 (deboost -0.2158, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669208",
"player_name": "Ryan Bliss",
"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.0,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.272,
"predicted_BB": 0.0,
"predicted_H": 0.19,
"predicted_HR": 0.03,
"predicted_OBP": 0.277,
"predicted_R": 0.0,
"predicted_RBI": 0.12,
"predicted_SLG": 0.381,
"predicted_SO": 2.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.0322,
"predicted_3B": 0.0025,
"predicted_AB": 2.7652,
"predicted_AVG": 0.2622,
"predicted_BB": 0.0507,
"predicted_H": 0.318,
"predicted_HBP": 0.031,
"predicted_HR": 0.0465,
"predicted_OBP": 0.2769,
"predicted_R": 0.0844,
"predicted_RBI": 0.1831,
"predicted_SLG": 0.377,
"predicted_SO": 2.2528
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0322,
"delta": 0.0322,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0025,
"delta": 0.0025,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.7652,
"delta": 0.2652,
"percent_delta": 0.1061,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2622,
"delta": -0.0098,
"percent_delta": -0.036,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0507,
"delta": 0.0507,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.19,
"after": 0.318,
"delta": 0.128,
"percent_delta": 0.6737,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0465,
"delta": 0.0165,
"percent_delta": 0.55,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.277,
"after": 0.2769,
"delta": -0.0001,
"percent_delta": -0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0844,
"delta": 0.0844,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.12,
"after": 0.1831,
"delta": 0.0631,
"percent_delta": 0.5258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.381,
"after": 0.377,
"delta": -0.004,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.5,
"after": 2.2528,
"delta": -0.2472,
"percent_delta": -0.0989,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 5,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 2.7652,
"delta": 0.2652,
"percent_delta": 0.1061,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.5,
"after": 2.2528,
"delta": -0.2472,
"percent_delta": -0.0989,
"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": 1,
"last_10": 1,
"season": 1
}
},
{
"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.0322,
"predicted_3B": 0.0025,
"predicted_AB": 2.7652,
"predicted_AVG": 0.1172,
"predicted_BB": 0.051,
"predicted_H": 0.324,
"predicted_HBP": 0.031,
"predicted_HR": 0.0472,
"predicted_OBP": 0.1332,
"predicted_R": 0.0872,
"predicted_RBI": 0.1892,
"predicted_SLG": 0.1819,
"predicted_SO": 2.24
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0322,
"after": 0.0322,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0025,
"after": 0.0025,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7652,
"after": 2.7652,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2622,
"after": 0.1172,
"delta": -0.145,
"percent_delta": -0.553,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0507,
"after": 0.051,
"delta": 0.0003,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.318,
"after": 0.324,
"delta": 0.006,
"percent_delta": 0.0189,
"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.0465,
"after": 0.0472,
"delta": 0.0007,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2769,
"after": 0.1332,
"delta": -0.1437,
"percent_delta": -0.519,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0844,
"after": 0.0872,
"delta": 0.0028,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1831,
"after": 0.1892,
"delta": 0.0061,
"percent_delta": 0.0333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.377,
"after": 0.1819,
"delta": -0.1951,
"percent_delta": -0.5175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.2528,
"after": 2.24,
"delta": -0.0128,
"percent_delta": -0.0057,
"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.377,
"after": 0.1819,
"delta": -0.1951,
"percent_delta": -0.5175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.77), rates preserved: AVG=0.117 HR/AB=0.017",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0322,
"after": 0.0,
"delta": -0.0322,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0025,
"after": 0.0,
"delta": -0.0025,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7652,
"after": 3.0,
"delta": 0.2348,
"percent_delta": 0.0849,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.324,
"after": 0.0,
"delta": -0.324,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.0472,
"after": 0.0,
"delta": -0.0472,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1892,
"after": 0.0,
"delta": -0.1892,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.24,
"after": 2.0,
"delta": -0.24,
"percent_delta": -0.1071,
"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": 2.7652,
"after": 3.0,
"delta": 0.2348,
"percent_delta": 0.0849,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.324,
"after": 0.0,
"delta": -0.324,
"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": 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_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.0872,
"after": 0.0,
"delta": -0.0872,
"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": 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_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.0872,
"after": 0.0,
"delta": -0.0872,
"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": 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.1172,
"after": 0.333,
"delta": 0.2158,
"percent_delta": 1.8413,
"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.1332,
"after": 0.333,
"delta": 0.1998,
"percent_delta": 1.5,
"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.1819,
"after": 0.333,
"delta": 0.1511,
"percent_delta": 0.8307,
"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.1172,
"after": 0.333,
"delta": 0.2158,
"percent_delta": 1.8413,
"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": 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": 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": 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": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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.1172,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.1332,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.1819,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1172,
"delta": -0.2158,
"percent_delta": -0.6481,
"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.1332,
"delta": -0.1998,
"percent_delta": -0.6001,
"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.1819,
"delta": -0.1511,
"percent_delta": -0.4538,
"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.1172,
"delta": -0.2158,
"percent_delta": -0.6481,
"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.272,
"after": 0.1172,
"delta": -0.1548,
"percent_delta": -0.5691,
"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": 0.19,
"after": 2.0,
"delta": 1.81,
"percent_delta": 9.5263,
"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.277,
"after": 0.1332,
"delta": -0.1438,
"percent_delta": -0.5191,
"direction": "deboost",
"projection_effect": "worse",
"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.12,
"after": 1.0,
"delta": 0.88,
"percent_delta": 7.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.381,
"after": 0.1819,
"delta": -0.1991,
"percent_delta": -0.5226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.5,
"after": 1.0,
"delta": -1.5,
"percent_delta": -0.6,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.19,
"after": 2.0,
"delta": 1.81,
"percent_delta": 9.5263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.5,
"after": 1.0,
"delta": -1.5,
"percent_delta": -0.6,
"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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.272 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.190 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.277 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.120 | - |
| predicted_SLG | 0.381 | - |
| predicted_SO | 2.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.032 | 0.032 |
| predicted_3B | 0.003 | 0.003 |
| predicted_AB | 2.765 | 0.265 |
| predicted_AVG | 0.262 | -0.010 |
| predicted_BB | 0.051 | 0.051 |
| predicted_H | 0.318 | 0.128 |
| predicted_HBP | 0.031 | - |
| predicted_HR | 0.046 | 0.017 |
| predicted_OBP | 0.277 | -0.000 |
| predicted_R | 0.084 | 0.084 |
| predicted_RBI | 0.183 | 0.063 |
| predicted_SLG | 0.377 | -0.004 |
| predicted_SO | 2.253 | -0.247 |
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 | 2.765 | 0.000 |
| predicted_AVG | 0.117 | -0.145 |
| predicted_BB | 0.051 | 0.000 |
| predicted_H | 0.324 | 0.006 |
| predicted_HBP | 0.031 | 0.000 |
| predicted_HR | 0.047 | 0.001 |
| predicted_OBP | 0.133 | -0.144 |
| predicted_R | 0.087 | 0.003 |
| predicted_RBI | 0.189 | 0.006 |
| predicted_SLG | 0.182 | -0.195 |
| predicted_SO | 2.240 | -0.013 |
AB rounded to 3 (raw=2.77), rates preserved: AVG=0.117 HR/AB=0.017
| 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 | 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 | 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 | 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.032 |
| predicted_3B | 0.000 | -0.003 |
| predicted_AB | 3.000 | 0.235 |
| predicted_AVG | 0.333 | 0.216 |
| predicted_BB | 0.000 | -0.051 |
| predicted_H | 1.000 | 0.676 |
| predicted_HR | 0.000 | -0.047 |
| predicted_OBP | 0.333 | 0.200 |
| predicted_R | 0.000 | -0.087 |
| predicted_RBI | 0.000 | -0.189 |
| predicted_SLG | 0.333 | 0.151 |
| predicted_SO | 2.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 | 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 | 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 | 1 | - | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 1.0000 |
| last_10 | 0.20 | 1 | - | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 1.0000 |
| season | 0.60 | 1 | - | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 1.0000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1680 |
| predicted_3B | 0.0130 |
| predicted_AB | 3.8820 |
| predicted_AVG | 0.2208 |
| predicted_BB | 0.2640 |
| predicted_H | 0.8570 |
| predicted_HBP | 0.0310 |
| predicted_HR | 0.1160 |
| predicted_OBP | 0.2765 |
| predicted_R | 0.4400 |
| predicted_RBI | 0.4490 |
| predicted_SLG | 0.3604 |
| predicted_SO | 1.2120 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1680 | 0.0322 | model_form_blend |
| predicted_3B | 0.0000 | 0.0130 | 0.0025 | model_form_blend |
| predicted_AB | 2.5000 | 3.8820 | 2.7652 | model_form_blend |
| predicted_AVG | 0.2720 | 0.2208 | 0.2622 | model_form_blend |
| predicted_BB | 0.0000 | 0.2640 | 0.0507 | model_form_blend |
| predicted_H | 0.1900 | 0.8570 | 0.3180 | model_form_blend |
| predicted_HBP | - | 0.0310 | 0.0310 | form_only |
| predicted_HR | 0.0300 | 0.1160 | 0.0465 | model_form_blend |
| predicted_OBP | 0.2770 | 0.2765 | 0.2769 | model_form_blend |
| predicted_R | 0.0000 | 0.4400 | 0.0844 | model_form_blend |
| predicted_RBI | 0.1200 | 0.4490 | 0.1831 | model_form_blend |
| predicted_SLG | 0.3810 | 0.3604 | 0.3770 | model_form_blend |
| predicted_SO | 2.5000 | 1.2120 | 2.2528 | 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 | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.0 |
| 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 | 1 |
| 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 | PH-DH |
| gameID | 20260328_CLE@SEA |
| game_type | ph |
| mlbID | 669208 |
| note | Struck out for Canzone in the 7th. |
| playerID | 669208 |
| playerName | Ryan Bliss |
| pos | 2B |
| started | False |
| startingPosition | PH |
| team | SEA |
| teamID | 25 |
| game_date | 2026-03-28 |
| game_pk | 823161.0 |
| sl_k_percent | 100.0 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.0 |
| sl_xwoba | 0.0 |
| sl_xba | 0.0 |
| sl_xslg | 0.0 |
| sl_whiff_percent | 80.0 |
| sl_swing_percent | 55.6 |
| at_bat_number | 57.0 |
| ab_pitcher | 681870.0 |
| ab_pitcher_name | Sabrowski, Erik |
| ab_home_team | SEA |
| ab_away_team | CLE |
| ab_game_type | R |
| ab_stand | R |
| ab_p_throws | L |
| ab_inning | 7.0 |
| ab_inning_topbot | Bot |
| ab_outs_when_up | 0.0 |
| ab_balls_start | 0.0 |
| ab_strikes_start | 0.0 |
| ab_home_score_start | 2.0 |
| ab_away_score_start | 3.0 |
| ab_bat_score_start | 2.0 |
| ab_fld_score_start | 3.0 |
| ab_event | strikeout |
| ab_event_description | Ryan Bliss strikes out swinging. |
| ab_event_type | S |
| ab_hit_location | 2.0 |
| ab_pitch_type_last | FF |
| ab_pitch_name_last | 4-Seam Fastball |
| ab_zone_last | 11.0 |
| ab_estimated_woba_last | 0.0 |
| ab_woba_value | 0.0 |
| ab_woba_denom | 1.0 |
| ab_babip_value | 0.0 |
| ab_iso_value | 0.0 |
| ab_balls_end | 1.0 |
| ab_strikes_end | 2.0 |
| ab_home_score_end | 2.0 |
| ab_away_score_end | 3.0 |
| ab_bat_score_end | 2.0 |
| ab_fld_score_end | 3.0 |
| ab_pitch_count | 4.0 |
| ab_release_speed_avg | 91.25 |
| ab_release_spin_rate_avg | 2555.0 |
| ab_effective_speed_avg | 91.45 |
| ab_delta_run_exp_avg | -0.0645 |
| ab_delta_home_win_exp_avg | -0.012 |
| ab_delta_pitcher_run_exp_avg | 0.0645 |
| ab_bat_speed_avg | 51.3 |
| ab_swing_length_avg | 5.7 |
| ab_release_speed_max | 94.1 |
| ab_release_spin_rate_max | 2583.0 |
| ab_release_speed_min | 84.1 |
| ab_release_spin_rate_min | 2526.0 |
| ab_delta_run_exp_sum | -0.258 |
| ab_delta_home_win_exp_sum | -0.048 |
| ab_delta_pitcher_run_exp_sum | 0.258 |
| ab_result_is_hit | False |
| ab_result_is_walk | False |
| ab_result_is_strikeout | True |
| ab_result_is_hbp | False |
| 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.250 | 0.000 | -0.250 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 1.833 | 2.000 | -1.833 | -2.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 4.333 | 2.000 | -3.333 | -1.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.850 | 6.000 | 0.150 | 0.000 |
| predicted_SO | 7.000 | 7.000 | 7.000 | Pitching_SO | 5.833 | 7.000 | 1.167 | 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 | 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": "676106",
"player_name": "Emerson Hancock",
"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": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"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": "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": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_SO": 7.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": 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": {}
},
{
"index": 3,
"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": 6.0,
"predicted_R": 0.0,
"predicted_SO": 7.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": 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": 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": 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,
"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 | 6.000 | - |
| predicted_SO | 7.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 | 0.000 | 0.000 |
| predicted_H | 1.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 6.000 | 0.000 |
| predicted_SO | 7.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 | 29.000 | 10.000 | 18.000 | 9.000 | 24.000 | 3.000 | 3.1034 | 0.9310 | 0.3448 | 0.6207 | 0.3103 | 0.8276 | 0.1035 |
| last_10 | 0.35 | 10 | 58.000 | 21.000 | 46.000 | 14.000 | 56.000 | 9.000 | 3.2586 | 1.0345 | 0.3621 | 0.7931 | 0.2414 | 0.9655 | 0.1552 |
| season | 0.20 | 12 | 70.200 | 22.000 | 52.000 | 15.000 | 70.000 | 10.000 | 2.8019 | 0.9481 | 0.3113 | 0.7359 | 0.2123 | 0.9906 | 0.1415 |
| Metric | Value |
|---|---|
| predicted_BB | 1.7170 |
| predicted_ER | 2.2410 |
| predicted_ERA | 3.4697 |
| predicted_H | 4.5250 |
| predicted_HR | 0.7680 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.3240 |
| predicted_WHIP | 1.0740 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.7170 | 1.3770 | model_form_blend |
| predicted_ER | 0.0000 | 2.2410 | 1.1782 | model_form_blend |
| predicted_ERA | - | 3.4697 | 3.4697 | form_only |
| predicted_H | 1.0000 | 4.5250 | 2.8532 | model_form_blend |
| predicted_HR | 0.0000 | 0.7680 | 0.4038 | model_form_blend |
| predicted_IP | 6.0000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 7.0000 | 5.3240 | 6.1189 | model_form_blend |
| predicted_WHIP | - | 1.0740 | 1.0740 | 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 | 6.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 7 |
| HR | 0 |
| BF | 20 |
| Pitches | 104 |
| 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 | 2 |
| Pitching_ERA | 2.80 |
| Pitching_Flyouts | 5 |
| Pitching_Groundouts | 4 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.0 |
| Pitching_Pitches | 91 |
| Pitching_R | 2 |
| Pitching_SO | 7 |
| Pitching_Strikes | 59 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260601_NYM@SEA |
| game_type | full |
| mlbID | 676106 |
| playerID | 676106 |
| playerName | Emerson Hancock |
| pos | P |
| started | True |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-01 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 5.5 |
| sl_woba | 0.275 |
| sl_xwoba | 0.321 |
| sl_sweet_spot_percent | 32.2 |
| sl_barrel_batted_rate | 10.5 |
| sl_hard_hit_percent | 43.7 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 52.1 |
| sl_avg_best_speed | 78.950045934 |
| sl_avg_hyper_speed | 94.842910331 |
| 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.360 | 2.000 | -0.360 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.560 | 2.000 | -0.560 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.920 | 1.000 | -0.920 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.868 | 0.200 | 0.132 | 0.800 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 1.400 | 0.000 | 1.600 | 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": "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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 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": 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 | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.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.200 | 4.000 | 5.000 | 2.000 | 3.000 | 1.000 | 7.7143 | 1.5000 | 0.8571 | 1.0714 | 0.4286 | 0.6429 | 0.2143 |
| last_10 | 0.35 | 10 | 9.100 | 5.000 | 10.000 | 3.000 | 12.000 | 2.000 | 4.8214 | 1.3929 | 0.5357 | 1.0714 | 0.3214 | 1.2857 | 0.2143 |
| season | 0.20 | 25 | 23.100 | 14.000 | 23.000 | 9.000 | 35.000 | 4.000 | 5.4000 | 1.3714 | 0.6000 | 0.9857 | 0.3857 | 1.5000 | 0.1714 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3730 |
| predicted_ER | 0.5850 |
| predicted_ERA | 5.2629 |
| predicted_H | 1.0040 |
| predicted_HR | 0.1710 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9850 |
| predicted_WHIP | 1.3770 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3730 | 0.1604 | model_form_blend |
| predicted_ER | 0.0000 | 0.5850 | 0.2516 | model_form_blend |
| predicted_ERA | - | 5.2629 | 5.2629 | form_only |
| predicted_H | 0.0000 | 1.0040 | 0.4319 | model_form_blend |
| predicted_HR | 0.0000 | 0.1710 | 0.0736 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 3.0000 | 0.9850 | 2.1333 | model_form_blend |
| predicted_WHIP | - | 1.3770 | 1.3770 | 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 | 0 |
| SO | 3 |
| 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 | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 5.40 |
| 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 | 0.2 |
| Pitching_Pitches | 19 |
| Pitching_R | 2 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L, BS |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260607_SEA@DET |
| 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-07 |
| sl_k_percent | 33.7 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.318 |
| sl_xwoba | 0.332 |
| sl_sweet_spot_percent | 33.9 |
| sl_barrel_batted_rate | 11.9 |
| sl_hard_hit_percent | 47.5 |
| sl_whiff_percent | 42.0 |
| sl_swing_percent | 46.8 |
| sl_avg_best_speed | 76.322726552 |
| sl_avg_hyper_speed | 95.21214069 |
| 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.188 | 2.000 | -0.188 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.156 | 0.000 | -0.156 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.938 | 0.000 | 0.062 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.797 | 0.100 | 0.203 | 0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.781 | 0.000 | 0.219 | 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": "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": 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 | 4.000 | 0.000 | 2.000 | 3.000 | 3.000 | 0.000 | 0.0000 | 1.2500 | 0.0000 | 0.5000 | 0.7500 | 0.7500 | 0.0000 |
| last_10 | 0.35 | 10 | 8.000 | 1.000 | 5.000 | 3.000 | 8.000 | 1.000 | 1.1250 | 1.0000 | 0.1250 | 0.6250 | 0.3750 | 1.0000 | 0.1250 |
| season | 0.20 | 31 | 29.000 | 5.000 | 29.000 | 6.000 | 25.000 | 1.000 | 1.5517 | 1.2069 | 0.1724 | 1.0000 | 0.2069 | 0.8621 | 0.0345 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3790 |
| predicted_ER | 0.2300 |
| predicted_ERA | 2.4097 |
| predicted_H | 0.6780 |
| predicted_HR | 0.0790 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7670 |
| predicted_WHIP | 1.2322 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3790 | 0.1717 | model_form_blend |
| predicted_ER | 0.0000 | 0.2300 | 0.1042 | model_form_blend |
| predicted_ERA | - | 2.4097 | 2.4097 | form_only |
| predicted_H | 1.0000 | 0.6780 | 0.8541 | model_form_blend |
| predicted_HR | 0.0000 | 0.0790 | 0.0358 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.7670 | 0.8944 | model_form_blend |
| predicted_WHIP | - | 1.2322 | 1.2322 | 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 | 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 | 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 | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.55 |
| 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 | 0.1 |
| Pitching_Pitches | 18 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260607_SEA@DET |
| 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-07 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 4.8 |
| sl_woba | 0.295 |
| sl_xwoba | 0.248 |
| sl_sweet_spot_percent | 26.7 |
| sl_barrel_batted_rate | 2.2 |
| sl_hard_hit_percent | 34.4 |
| sl_whiff_percent | 22.6 |
| sl_swing_percent | 53.2 |
| sl_avg_best_speed | 73.481302045 |
| sl_avg_hyper_speed | 92.754015455 |
| 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.263 | 1.000 | 1.737 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.053 | 0.000 | 0.947 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.421 | 0.000 | 0.579 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.768 | 1.000 | 0.232 | 0.000 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 0.737 | 1.000 | 2.263 | 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": "666374",
"player_name": "Matt Brash",
"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": 1.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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_R": 1.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": 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": 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": 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": 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 | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 1.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.200 | 1.000 | 5.000 | 3.000 | 6.000 | 0.000 | 1.9286 | 1.7143 | 0.2143 | 1.0714 | 0.6429 | 1.2857 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 1.000 | 5.000 | 4.000 | 10.000 | 0.000 | 0.9310 | 0.9310 | 0.1035 | 0.5172 | 0.4138 | 1.0345 | 0.0000 |
| season | 0.20 | 18 | 16.000 | 1.000 | 8.000 | 5.000 | 14.000 | 0.000 | 0.5625 | 0.8125 | 0.0625 | 0.5000 | 0.3125 | 0.8750 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4160 |
| predicted_ER | 0.3530 |
| predicted_ERA | 3.1797 |
| predicted_H | 0.8820 |
| predicted_HR | 0.0850 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0050 |
| predicted_WHIP | 1.2979 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.4160 | 1.3805 | model_form_blend |
| predicted_ER | 1.0000 | 0.3530 | 0.7470 | model_form_blend |
| predicted_ERA | - | 3.1797 | 3.1797 | form_only |
| predicted_H | 1.0000 | 0.8820 | 0.9539 | model_form_blend |
| predicted_HR | 1.0000 | 0.0850 | 0.6422 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 3.0000 | 1.0050 | 2.2198 | model_form_blend |
| predicted_WHIP | - | 1.2979 | 1.2979 | 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 | 18 |
| 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 | 3 |
| 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 | 0.56 |
| 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 | 17 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260606_SEA@DET |
| game_type | full |
| mlbID | 666374 |
| playerID | 666374 |
| playerName | Matt Brash |
| pos | P |
| started | False |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-06 |
| sl_k_percent | 23.3 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.21 |
| sl_xwoba | 0.306 |
| sl_sweet_spot_percent | 41.0 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 41.0 |
| sl_whiff_percent | 33.0 |
| sl_swing_percent | 41.0 |
| sl_avg_best_speed | 76.958245789 |
| sl_avg_hyper_speed | 94.549594474 |
| Field | Value |
|---|---|
| Pitcher | Trey Gibson |
| Role | Starter |
| Projection Source | league_average_stable_fallback |
| Savant Quality Score | - |
| ESPN Rank | - |
| Movement Available | - |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 3 |
| Pre ER | 1 |
| Pre H | 5 |
| Pre BB | 2 |
| Pre SO | 4 |
| Season ERA | - |
| Season WHIP | - |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"opponent": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"edges": {
"quality_edge": -0.2032,
"offense_edge": 0.0195,
"opponent_offense_edge": -0.0094,
"defense_strength": -0.0708,
"opponent_defense_weakness": -0.1379,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9901,
"run_prevention": 1.0157,
"strikeout": 0.9947
}
}{
"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."
}{}{
"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": {},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0,
"prior_weight": 1.0
},
"role": "pitcher",
"player_id": "694346",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 0,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 0,
"totals": {
"IP": 0.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 0.0,
"Pitches": 0.0
},
"per_game": {
"IP": 0.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 0.0,
"Pitches": 0.0
},
"rates": {
"ERA": null,
"WHIP": null,
"ER_per_IP": null,
"H_per_IP": null,
"BB_per_IP": null,
"SO_per_IP": null,
"HR_per_IP": null
}
},
"last_10": {
"games": 0,
"totals": {
"IP": 0.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 0.0,
"Pitches": 0.0
},
"per_game": {
"IP": 0.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 0.0,
"Pitches": 0.0
},
"rates": {
"ERA": null,
"WHIP": null,
"ER_per_IP": null,
"H_per_IP": null,
"BB_per_IP": null,
"SO_per_IP": null,
"HR_per_IP": null
}
},
"season": {
"games": 0,
"totals": {
"IP": 0.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 0.0,
"Pitches": 0.0
},
"per_game": {
"IP": 0.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 0.0,
"Pitches": 0.0
},
"rates": {
"ERA": null,
"WHIP": null,
"ER_per_IP": null,
"H_per_IP": null,
"BB_per_IP": null,
"SO_per_IP": null,
"HR_per_IP": null
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.162,
"predicted_H": 0.319,
"predicted_BB": 0.121,
"predicted_SO": 0.311,
"predicted_HR": 0.046,
"predicted_ERA": 4.3634,
"predicted_WHIP": 1.322
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7725,
"form_weight": 0.2275,
"form_reliability": 0.0,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0,
"prior_weight": 1.0
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.162,
"final": 0.8094,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 0.319,
"final": 3.9351,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.121,
"final": 1.5725,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 0.311,
"final": 3.1608,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.046,
"final": 0.0105,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.3634,
"final": 4.3634,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.322,
"final": 1.322,
"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.1597 |
| ESPN Rank | 612 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1333 |
| Avg Velo | 92.0902 |
| Avg Spin | 2474.2387 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.2000 |
| Pre ER | 3 |
| Pre H | 4 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 7.1053 |
| Season WHIP | 1.5789 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"opponent": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"edges": {
"quality_edge": -0.2032,
"offense_edge": 0.0195,
"opponent_offense_edge": -0.0094,
"defense_strength": -0.0708,
"opponent_defense_weakness": -0.1379,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9901,
"run_prevention": 1.0157,
"strikeout": 0.9947
},
"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": 23.3,
"bb_percent": 8.3,
"woba": 0.363,
"xwoba": 0.282,
"sweet_spot_percent": 39.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 31.7,
"avg_best_speed": 74.5736,
"avg_hyper_speed": 92.964,
"whiff_percent": 25.0,
"swing_percent": 52.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.2458,
"command_and_miss": 0.0257,
"regression_edge": 2.0,
"xwoba_edge": 0.9286,
"barrel_edge": -0.0444,
"hard_hit_edge": 0.9857,
"whiff_edge": -0.1143,
"bb_edge": 0.2,
"pitch_design_score": 0.1333
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "552640",
"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": 92.09022359992947,
"release_spin_rate": 2474.2386868033927,
"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": 92.09022359992947,
"release_spin_rate": 2474.2386868033927,
"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.0902,
"release_spin_rate": 2474.2387,
"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.1333,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.952,
"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.1597,
"sample_weight": 0.45,
"run_prevention_factor": 0.9864,
"strikeout_factor": 0.999,
"walk_factor": 0.9928,
"homer_factor": 0.9713,
"woba_minus_xwoba": 0.081,
"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": 612,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 612,
"gp_value": 15.0,
"gp_rank": 210,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 7.1052,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 2.0,
"hld_rank": 158,
"ip_value": 12.2,
"ip_rank": 433,
"h_value": 16.0,
"h_rank": 357,
"er_value": 10.0,
"er_rank": 285,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 4.0,
"bb_rank": 477,
"k_value": 14.0,
"k_rank": 395,
"k_per_9_value": 9.947369,
"k_per_9_rank": 24,
"whip_value": 1.5789,
"whip_rank": null,
"war_value": -0.43,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9939,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9939,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9968,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9871,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9996,
"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": 6,
"BB": 2,
"SO": 9,
"HR": 2,
"ERA": 3.1153846153846154,
"WHIP": 0.9230769230769231,
"K9": 9.346153846153847,
"HR9": 2.076923076923077,
"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-04T00:00:00"
}{
"available": true,
"pitcher_id": "552640",
"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": 92.09022359992947,
"release_spin_rate": 2474.2386868033927,
"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": 92.09022359992947,
"release_spin_rate": 2474.2386868033927,
"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.0902,
"release_spin_rate": 2474.2387,
"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.1333,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.952,
"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.501,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3334,
"prior_weight": 0.6666
},
"role": "pitcher",
"player_id": "552640",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 15,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 1.0,
"SO": 6.0,
"HR": 1.0,
"BF": 16.0,
"Pitches": 58.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 0.2,
"SO": 1.2,
"HR": 0.2,
"BF": 3.2,
"Pitches": 11.6
},
"rates": {
"ERA": 2.0769,
"WHIP": 0.6923,
"ER_per_IP": 0.23077,
"H_per_IP": 0.46154,
"BB_per_IP": 0.23077,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 3.0,
"R": 4.0,
"H": 6.0,
"BB": 2.0,
"SO": 9.0,
"HR": 2.0,
"BF": 35.0,
"Pitches": 116.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.4,
"H": 0.6,
"BB": 0.2,
"SO": 0.9,
"HR": 0.2,
"BF": 3.5,
"Pitches": 11.6
},
"rates": {
"ERA": 3.1154,
"WHIP": 0.9231,
"ER_per_IP": 0.34615,
"H_per_IP": 0.69231,
"BB_per_IP": 0.23077,
"SO_per_IP": 1.03846,
"HR_per_IP": 0.23077
}
},
"season": {
"games": 15,
"totals": {
"IP": 12.2,
"ER": 10.0,
"R": 12.0,
"H": 16.0,
"BB": 4.0,
"SO": 14.0,
"HR": 3.0,
"BF": 59.0,
"Pitches": 212.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6667,
"R": 0.8,
"H": 1.0667,
"BB": 0.2667,
"SO": 0.9333,
"HR": 0.2,
"BF": 3.9333,
"Pitches": 14.1333
},
"rates": {
"ERA": 7.1053,
"WHIP": 1.5789,
"ER_per_IP": 0.78947,
"H_per_IP": 1.26316,
"BB_per_IP": 0.31579,
"SO_per_IP": 1.10526,
"HR_per_IP": 0.23684
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.451,
"predicted_H": 0.873,
"predicted_BB": 0.326,
"predicted_SO": 1.025,
"predicted_HR": 0.17,
"predicted_ERA": 4.0576,
"predicted_WHIP": 1.1981
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6316,
"form_weight": 0.3684,
"form_reliability": 0.3334,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.501,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3334,
"prior_weight": 0.6666
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 3.0,
"form": 0.451,
"final": 2.061,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 0.873,
"final": 2.8481,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.326,
"final": 1.3834,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.025,
"final": 0.3776,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.17,
"final": 0.0626,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.0576,
"final": 4.0576,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1981,
"final": 1.1981,
"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 Nunez |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0318 |
| ESPN Rank | 623 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0580 |
| Avg Velo | 90.7459 |
| Avg Spin | 2299.3568 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 4.2000 |
| Season WHIP | 1.1667 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"opponent": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"edges": {
"quality_edge": -0.2032,
"offense_edge": 0.0195,
"opponent_offense_edge": -0.0094,
"defense_strength": -0.0708,
"opponent_defense_weakness": -0.1379,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9901,
"run_prevention": 1.0157,
"strikeout": 0.9947
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "689296",
"profile": {
"available": true,
"pitcher_id": "689296",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 106.0,
"k_percent": 26.0,
"bb_percent": 8.4,
"woba": 0.317,
"xwoba": 0.325,
"sweet_spot_percent": 40.0,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 43.5,
"avg_best_speed": 78.1579,
"avg_hyper_speed": 94.6123,
"whiff_percent": 35.0,
"swing_percent": 48.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4162,
"command_and_miss": 0.6943,
"regression_edge": -0.2286,
"xwoba_edge": -0.3,
"barrel_edge": -0.5111,
"hard_hit_edge": -0.7,
"whiff_edge": 1.3143,
"bb_edge": 0.175,
"pitch_design_score": 0.058
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "689296",
"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": 90.74594072875689,
"release_spin_rate": 2299.3568187958263,
"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": 90.74594072875689,
"release_spin_rate": 2299.3568187958263,
"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.7459,
"release_spin_rate": 2299.3568,
"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.058,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4143,
"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.0318,
"sample_weight": 0.45,
"run_prevention_factor": 1.0027,
"strikeout_factor": 1.0316,
"walk_factor": 0.9937,
"homer_factor": 1.0351,
"woba_minus_xwoba": -0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "689296",
"espn_id": 5275196,
"player_name": "Anthony Nunez",
"team": "BAL",
"role": "pitcher",
"espn_rank": 623,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 623,
"gp_value": 29.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.1,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 3.0,
"sv_rank": 41,
"hld_value": 6.0,
"hld_rank": 61,
"ip_value": 30.0,
"ip_rank": 198,
"h_value": 28.0,
"h_rank": 193,
"er_value": 17.0,
"er_rank": 160,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 11.0,
"bb_rank": 236,
"k_value": 34.0,
"k_rank": 170,
"k_per_9_value": 10.2,
"k_per_9_rank": 23,
"whip_value": 1.3,
"whip_rank": null,
"war_value": -0.48,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0012,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0012,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9972,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0158,
"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": 10.0,
"ER": 8,
"H": 11,
"BB": 4,
"SO": 12,
"HR": 0,
"ERA": 7.2,
"WHIP": 1.5,
"K9": 10.8,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "689296",
"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": 90.74594072875689,
"release_spin_rate": 2299.3568187958263,
"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": 90.74594072875689,
"release_spin_rate": 2299.3568187958263,
"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.7459,
"release_spin_rate": 2299.3568,
"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.058,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4143,
"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.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"role": "pitcher",
"player_id": "689296",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 3.0,
"R": 3.0,
"H": 6.0,
"BB": 3.0,
"SO": 6.0,
"HR": 0.0,
"BF": 26.0,
"Pitches": 97.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 1.2,
"BB": 0.6,
"SO": 1.2,
"HR": 0.0,
"BF": 5.2,
"Pitches": 19.4
},
"rates": {
"ERA": 5.0625,
"WHIP": 1.6875,
"ER_per_IP": 0.5625,
"H_per_IP": 1.125,
"BB_per_IP": 0.5625,
"SO_per_IP": 1.125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 8.0,
"R": 8.0,
"H": 11.0,
"BB": 4.0,
"SO": 12.0,
"HR": 0.0,
"BF": 46.0,
"Pitches": 189.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.1,
"BB": 0.4,
"SO": 1.2,
"HR": 0.0,
"BF": 4.6,
"Pitches": 18.9
},
"rates": {
"ERA": 7.2,
"WHIP": 1.5,
"ER_per_IP": 0.8,
"H_per_IP": 1.1,
"BB_per_IP": 0.4,
"SO_per_IP": 1.2,
"HR_per_IP": 0.0
}
},
"season": {
"games": 28,
"totals": {
"IP": 30.0,
"ER": 14.0,
"R": 18.0,
"H": 26.0,
"BB": 9.0,
"SO": 34.0,
"HR": 4.0,
"BF": 127.0,
"Pitches": 477.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.6429,
"H": 0.9286,
"BB": 0.3214,
"SO": 1.2143,
"HR": 0.1429,
"BF": 4.5357,
"Pitches": 17.0357
},
"rates": {
"ERA": 4.2,
"WHIP": 1.1667,
"ER_per_IP": 0.46667,
"H_per_IP": 0.86667,
"BB_per_IP": 0.3,
"SO_per_IP": 1.13333,
"HR_per_IP": 0.13333
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.562,
"predicted_H": 1.016,
"predicted_BB": 0.413,
"predicted_SO": 1.053,
"predicted_HR": 0.078,
"predicted_ERA": 5.0547,
"predicted_WHIP": 1.4281
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5434,
"form_weight": 0.4566,
"form_reliability": 0.5423,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.562,
"final": 0.2566,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.016,
"final": 0.4639,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.413,
"final": 0.1886,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.053,
"final": 1.0242,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.078,
"final": 0.0356,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.0547,
"final": 5.0547,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4281,
"final": 1.4281,
"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.4884 |
| ESPN Rank | 39 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0034 |
| Avg Velo | 89.7716 |
| Avg Spin | 2460.9712 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 1 |
| Season WHIP | 0.6296 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"opponent": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"edges": {
"quality_edge": -0.2032,
"offense_edge": 0.0195,
"opponent_offense_edge": -0.0094,
"defense_strength": -0.0708,
"opponent_defense_weakness": -0.1379,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9901,
"run_prevention": 1.0157,
"strikeout": 0.9947
},
"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": 32.3,
"bb_percent": 9.4,
"woba": 0.171,
"xwoba": 0.24,
"sweet_spot_percent": 23.2,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 32.1,
"avg_best_speed": 72.8936,
"avg_hyper_speed": 92.809,
"whiff_percent": 38.8,
"swing_percent": 48.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.7142,
"command_and_miss": 1.2393,
"regression_edge": -1.9714,
"xwoba_edge": 2.1286,
"barrel_edge": 0.3778,
"hard_hit_edge": 0.9286,
"whiff_edge": 1.8571,
"bb_edge": -0.075,
"pitch_design_score": 0.0034
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "670329",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 21,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 21,
"pitch_usage": 0.0,
"release_speed": 89.7716231277967,
"release_spin_rate": 2460.9711946740804,
"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": 21,
"pitch_usage": 0.0,
"release_speed": 89.7716231277967,
"release_spin_rate": 2460.9711946740804,
"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.7716,
"release_spin_rate": 2460.9712,
"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.0034,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0246,
"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.4884,
"sample_weight": 0.45,
"run_prevention_factor": 0.9585,
"strikeout_factor": 1.0576,
"walk_factor": 1.0027,
"homer_factor": 0.941,
"woba_minus_xwoba": -0.069,
"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": 39,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 39,
"gp_value": 29.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.0,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 4.0,
"sv_rank": 27,
"hld_value": 8.0,
"hld_rank": 30,
"ip_value": 27.0,
"ip_rank": 248,
"h_value": 8.0,
"h_rank": 490,
"er_value": 3.0,
"er_rank": 533,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 9.0,
"bb_rank": 298,
"k_value": 31.0,
"k_rank": 196,
"k_per_9_value": 10.333333,
"k_per_9_rank": 21,
"whip_value": 0.6296,
"whip_rank": null,
"war_value": 1.59,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9813,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9813,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0012,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9734,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0259,
"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": 2,
"SO": 11,
"HR": 1,
"ERA": 2.0,
"WHIP": 1.0,
"K9": 11.0,
"HR9": 1.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-07T00:00:00"
}{
"available": true,
"pitcher_id": "670329",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 21,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 21,
"pitch_usage": 0.0,
"release_speed": 89.7716231277967,
"release_spin_rate": 2460.9711946740804,
"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": 21,
"pitch_usage": 0.0,
"release_speed": 89.7716231277967,
"release_spin_rate": 2460.9711946740804,
"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.7716,
"release_spin_rate": 2460.9712,
"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.0034,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0246,
"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.332,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.516,
"prior_weight": 0.484
},
"role": "pitcher",
"player_id": "670329",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 2.0,
"SO": 5.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 78.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.4,
"SO": 1.0,
"HR": 0.2,
"BF": 4.2,
"Pitches": 15.6
},
"rates": {
"ERA": 1.5882,
"WHIP": 0.8824,
"ER_per_IP": 0.17647,
"H_per_IP": 0.52941,
"BB_per_IP": 0.35294,
"SO_per_IP": 0.88235,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 2.0,
"H": 7.0,
"BB": 2.0,
"SO": 11.0,
"HR": 1.0,
"BF": 35.0,
"Pitches": 132.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.7,
"BB": 0.2,
"SO": 1.1,
"HR": 0.1,
"BF": 3.5,
"Pitches": 13.2
},
"rates": {
"ERA": 2.0,
"WHIP": 1.0,
"ER_per_IP": 0.22222,
"H_per_IP": 0.77778,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.22222,
"HR_per_IP": 0.11111
}
},
"season": {
"games": 29,
"totals": {
"IP": 27.0,
"ER": 3.0,
"R": 3.0,
"H": 8.0,
"BB": 9.0,
"SO": 31.0,
"HR": 2.0,
"BF": 96.0,
"Pitches": 374.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1034,
"R": 0.1034,
"H": 0.2759,
"BB": 0.3103,
"SO": 1.069,
"HR": 0.069,
"BF": 3.3103,
"Pitches": 12.8966
},
"rates": {
"ERA": 1.0,
"WHIP": 0.6296,
"ER_per_IP": 0.11111,
"H_per_IP": 0.2963,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.14815,
"HR_per_IP": 0.07407
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.327,
"predicted_H": 0.757,
"predicted_BB": 0.333,
"predicted_SO": 0.996,
"predicted_HR": 0.136,
"predicted_ERA": 2.9451,
"predicted_WHIP": 1.0903
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5545,
"form_weight": 0.4455,
"form_reliability": 0.516,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.332,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.516,
"prior_weight": 0.484
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.327,
"final": 0.1457,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.757,
"final": 0.3373,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.333,
"final": 0.1484,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.996,
"final": 0.9982,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.136,
"final": 0.0606,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.9451,
"final": 2.9451,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0903,
"final": 1.0903,
"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 | Yennier Cano |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0631 |
| ESPN Rank | 165 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1258 |
| Avg Velo | 91.9570 |
| Avg Spin | 1937.1984 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.1094 |
| Season WHIP | 0.6562 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 75,
"wins": 36,
"losses": 39,
"win_pct": 0.48,
"runs_scored": 342.0,
"runs_allowed": 361.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2533,
"avg_runs_scored": 4.56,
"avg_runs_allowed": 4.8133,
"offense_index": 1.0195,
"defense_index": 0.9292,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.5,
"avg_runs_allowed": 4.5,
"run_differential": 10.0
},
"available": true,
"quality_score": -0.0481
},
"opponent": {
"team": "SEA",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5278,
"runs_scored": 319.0,
"runs_allowed": 283.0,
"run_differential": 36.0,
"run_differential_per_game": 0.5,
"avg_runs_scored": 4.4306,
"avg_runs_allowed": 3.9306,
"offense_index": 0.9906,
"defense_index": 1.1379,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.4,
"run_differential": 13.0
},
"available": true,
"quality_score": 0.1551
},
"edges": {
"quality_edge": -0.2032,
"offense_edge": 0.0195,
"opponent_offense_edge": -0.0094,
"defense_strength": -0.0708,
"opponent_defense_weakness": -0.1379,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9901,
"run_prevention": 1.0157,
"strikeout": 0.9947
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "666974",
"profile": {
"available": true,
"pitcher_id": "666974",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 70.0,
"k_percent": 20.0,
"bb_percent": 3.8,
"woba": 0.221,
"xwoba": 0.296,
"sweet_spot_percent": 23.3,
"barrel_batted_rate": 10.0,
"hard_hit_percent": 43.3,
"avg_best_speed": 76.7052,
"avg_hyper_speed": 94.2498,
"whiff_percent": 25.2,
"swing_percent": 46.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5672,
"command_and_miss": 0.0486,
"regression_edge": -2.0,
"xwoba_edge": 0.5286,
"barrel_edge": -0.6444,
"hard_hit_edge": -0.6714,
"whiff_edge": -0.0857,
"bb_edge": 1.325,
"pitch_design_score": 0.1258
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "666974",
"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": 91.95700676070165,
"release_spin_rate": 1937.1983588091362,
"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": 91.95700676070165,
"release_spin_rate": 1937.1983588091362,
"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.957,
"release_spin_rate": 1937.1984,
"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.1258,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8987,
"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.0631,
"sample_weight": 0.45,
"run_prevention_factor": 0.9946,
"strikeout_factor": 0.991,
"walk_factor": 0.9523,
"homer_factor": 1.0281,
"woba_minus_xwoba": -0.075,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "666974",
"espn_id": 35536,
"player_name": "Yennier Cano",
"team": "BAL",
"role": "pitcher",
"espn_rank": 165,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 165,
"gp_value": 29.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.5312,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 2.0,
"l_rank": 161,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 4.0,
"hld_rank": 104,
"ip_value": 21.1,
"ip_rank": 329,
"h_value": 14.0,
"h_rank": 394,
"er_value": 6.0,
"er_rank": 425,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 4.0,
"bb_rank": 477,
"k_value": 16.0,
"k_rank": 368,
"k_per_9_value": 6.75,
"k_per_9_rank": 30,
"whip_value": 0.8437,
"whip_rank": null,
"war_value": 0.56,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9976,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9976,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9785,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0126,
"adjusted": 0
},
"predicted_SO": {
"original": 0.0,
"factor": 0.996,
"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": 6.1,
"ER": 3,
"H": 4,
"BB": 2,
"SO": 5,
"HR": 0,
"ERA": 4.2631578947368425,
"WHIP": 0.9473684210526316,
"K9": 7.105263157894737,
"HR9": 0.0,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "666974",
"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": 91.95700676070165,
"release_spin_rate": 1937.1983588091362,
"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": 91.95700676070165,
"release_spin_rate": 1937.1983588091362,
"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.957,
"release_spin_rate": 1937.1984,
"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.1258,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8987,
"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.213,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4573,
"prior_weight": 0.5427
},
"role": "pitcher",
"player_id": "666974",
"report_date": "20260608_S",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 0.0,
"SO": 1.0,
"HR": 0.0,
"BF": 11.0,
"Pitches": 44.0
},
"per_game": {
"IP": 0.1,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.0,
"SO": 0.2,
"HR": 0.0,
"BF": 2.2,
"Pitches": 8.8
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.71429,
"BB_per_IP": 0.0,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.1,
"ER": 3.0,
"R": 3.0,
"H": 5.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 28.0,
"Pitches": 108.0
},
"per_game": {
"IP": 0.2,
"ER": 0.3,
"R": 0.3,
"H": 0.5,
"BB": 0.2,
"SO": 0.5,
"HR": 0.0,
"BF": 2.8,
"Pitches": 10.8
},
"rates": {
"ERA": 3.6818,
"WHIP": 0.9545,
"ER_per_IP": 0.40909,
"H_per_IP": 0.68182,
"BB_per_IP": 0.27273,
"SO_per_IP": 0.68182,
"HR_per_IP": 0.0
}
},
"season": {
"games": 28,
"totals": {
"IP": 21.1,
"ER": 5.0,
"R": 5.0,
"H": 11.0,
"BB": 3.0,
"SO": 16.0,
"HR": 1.0,
"BF": 77.0,
"Pitches": 292.0
},
"per_game": {
"IP": 0.2,
"ER": 0.1786,
"R": 0.1786,
"H": 0.3929,
"BB": 0.1071,
"SO": 0.5714,
"HR": 0.0357,
"BF": 2.75,
"Pitches": 10.4286
},
"rates": {
"ERA": 2.1094,
"WHIP": 0.6562,
"ER_per_IP": 0.23438,
"H_per_IP": 0.51562,
"BB_per_IP": 0.14062,
"SO_per_IP": 0.75,
"HR_per_IP": 0.04688
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.315,
"predicted_H": 0.615,
"predicted_BB": 0.152,
"predicted_SO": 0.462,
"predicted_HR": 0.048,
"predicted_ERA": 4.7377,
"predicted_WHIP": 1.283
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5793,
"form_weight": 0.4207,
"form_reliability": 0.4573,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.213,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4573,
"prior_weight": 0.5427
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.315,
"final": 0.1325,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.615,
"final": 0.2587,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.152,
"final": 0.0639,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.462,
"final": 0.7737,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.048,
"final": 0.0202,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.7377,
"final": 4.7377,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.283,
"final": 1.283,
"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.214 | 0.000 | 0.000 | Hitting_2B | 0.214 | 0.000 | -0.214 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 4.760 | 4.000 | 8.000 | Hitting_AB | 4.271 | 4.000 | -0.271 | 0.000 |
| predicted_AVG | 0.220 | 0.000 | 0.250 | Hitting_AVG | 0.212 | 0.000 | -0.212 | 0.000 |
| predicted_BB | 0.282 | 0.000 | 1.000 | Hitting_BB | 0.282 | 0.000 | -0.282 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.061 | 0.000 | -0.061 | 0.000 |
| predicted_H | 1.050 | 0.000 | 2.000 | Hitting_H | 0.905 | 0.000 | -0.905 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.206 | 0.000 | -0.206 | 0.000 |
| predicted_OBP | 0.301 | 0.000 | 0.333 | Hitting_OBP | 0.267 | 0.000 | -0.267 | 0.000 |
| predicted_R | 0.519 | 0.000 | 1.000 | Hitting_R | 0.519 | 0.000 | -0.519 | 0.000 |
| predicted_RBI | 0.420 | 0.000 | 1.000 | Hitting_RBI | 0.523 | 0.000 | -0.523 | 0.000 |
| predicted_SLG | 0.378 | 0.000 | 0.250 | Hitting_SLG | 0.416 | 0.000 | -0.416 | 0.000 |
| predicted_SO | 1.286 | 2.000 | 2.000 | Hitting_SO | 1.286 | 2.000 | 0.714 | 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 | 0 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 1.2860 -> 2.0000 (boost 0.7140, worse) |
| Biggest Deboost | predicted_H: 1.0500 -> 0.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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 4.7600 -> 7.9995 (boost 3.2395, 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.2967 -> 0.2690 (deboost -0.0277, 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_BB: 0.5774 -> 1.0000 (boost 0.4226, better) | predicted_2B: 0.4107 -> 0.0000 (deboost -0.4107, worse) | AB rounded to 8 (raw=8.00), rates preserved: AVG=0.216 HR/AB=0.029 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2690 -> 0.3330 (boost 0.0640, better) | predicted_SLG: 0.3595 -> 0.2500 (deboost -0.1095, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3595 (boost 0.1095, better) | predicted_OBP: 0.3330 -> 0.2690 (deboost -0.0640, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683002",
"player_name": "Gunnar Henderson",
"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.214,
"predicted_3B": 0.019,
"predicted_AB": 4.76,
"predicted_AVG": 0.22,
"predicted_BB": 0.282,
"predicted_H": 1.05,
"predicted_HR": 0.14,
"predicted_OBP": 0.301,
"predicted_R": 0.519,
"predicted_RBI": 0.42,
"predicted_SLG": 0.378,
"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.4107,
"predicted_3B": 0.0252,
"predicted_AB": 7.9995,
"predicted_AVG": 0.2208,
"predicted_BB": 0.5805,
"predicted_H": 1.7706,
"predicted_HBP": 0.254,
"predicted_HR": 0.2335,
"predicted_OBP": 0.2967,
"predicted_R": 1.0222,
"predicted_RBI": 0.7106,
"predicted_SLG": 0.3739,
"predicted_SO": 2.1271
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.214,
"after": 0.4107,
"delta": 0.1967,
"percent_delta": 0.9192,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0252,
"delta": 0.0062,
"percent_delta": 0.3263,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.76,
"after": 7.9995,
"delta": 3.2395,
"percent_delta": 0.6806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2208,
"delta": 0.0008,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.282,
"after": 0.5805,
"delta": 0.2985,
"percent_delta": 1.0585,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.7706,
"delta": 0.7206,
"percent_delta": 0.6863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2335,
"delta": 0.0935,
"percent_delta": 0.6679,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2967,
"delta": -0.0043,
"percent_delta": -0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.519,
"after": 1.0222,
"delta": 0.5032,
"percent_delta": 0.9696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.7106,
"delta": 0.2906,
"percent_delta": 0.6919,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.378,
"after": 0.3739,
"delta": -0.0041,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.286,
"after": 2.1271,
"delta": 0.8411,
"percent_delta": 0.654,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.76,
"after": 7.9995,
"delta": 3.2395,
"percent_delta": 0.6806,
"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": 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.4107,
"predicted_3B": 0.0252,
"predicted_AB": 7.9995,
"predicted_AVG": 0.2162,
"predicted_BB": 0.5774,
"predicted_H": 1.7295,
"predicted_HBP": 0.254,
"predicted_HR": 0.2285,
"predicted_OBP": 0.269,
"predicted_R": 0.9816,
"predicted_RBI": 0.6824,
"predicted_SLG": 0.3595,
"predicted_SO": 2.1384
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4107,
"after": 0.4107,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0252,
"after": 0.0252,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.9995,
"after": 7.9995,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2208,
"after": 0.2162,
"delta": -0.0046,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5805,
"after": 0.5774,
"delta": -0.0031,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7706,
"after": 1.7295,
"delta": -0.0411,
"percent_delta": -0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.254,
"after": 0.254,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2335,
"after": 0.2285,
"delta": -0.005,
"percent_delta": -0.0214,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2967,
"after": 0.269,
"delta": -0.0277,
"percent_delta": -0.0934,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0222,
"after": 0.9816,
"delta": -0.0406,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7106,
"after": 0.6824,
"delta": -0.0282,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3739,
"after": 0.3595,
"delta": -0.0144,
"percent_delta": -0.0385,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1271,
"after": 2.1384,
"delta": 0.0113,
"percent_delta": 0.0053,
"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.2967,
"after": 0.269,
"delta": -0.0277,
"percent_delta": -0.0934,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=8.00), rates preserved: AVG=0.216 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4107,
"after": 0.0,
"delta": -0.4107,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0252,
"after": 0.0,
"delta": -0.0252,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.9995,
"after": 8.0,
"delta": 0.0005,
"percent_delta": 0.0001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5774,
"after": 1.0,
"delta": 0.4226,
"percent_delta": 0.7319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7295,
"after": 2.0,
"delta": 0.2705,
"percent_delta": 0.1564,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.254,
"after": 0.0,
"delta": -0.254,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2285,
"after": 0.0,
"delta": -0.2285,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6824,
"after": 1.0,
"delta": 0.3176,
"percent_delta": 0.4654,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1384,
"after": 2.0,
"delta": -0.1384,
"percent_delta": -0.0647,
"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_BB",
"before": 0.5774,
"after": 1.0,
"delta": 0.4226,
"percent_delta": 0.7319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4107,
"after": 0.0,
"delta": -0.4107,
"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": 8.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": 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": 8.0,
"after": 8.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": 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_R",
"before": 0.9816,
"after": 1.0,
"delta": 0.0184,
"percent_delta": 0.0187,
"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_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": {}
},
{
"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": 8.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"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": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2162,
"after": 0.25,
"delta": 0.0338,
"percent_delta": 0.1563,
"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": 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_OBP",
"before": 0.269,
"after": 0.333,
"delta": 0.064,
"percent_delta": 0.2379,
"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.3595,
"after": 0.25,
"delta": -0.1095,
"percent_delta": -0.3046,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.269,
"after": 0.333,
"delta": 0.064,
"percent_delta": 0.2379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3595,
"after": 0.25,
"delta": -0.1095,
"percent_delta": -0.3046,
"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": 8.0,
"after": 4.0,
"delta": -4.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_AB",
"before": 8.0,
"after": 4.0,
"delta": -4.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": 4.0,
"predicted_AVG": 0.2162,
"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.269,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3595,
"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.2162,
"delta": -0.0338,
"percent_delta": -0.1352,
"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.269,
"delta": -0.064,
"percent_delta": -0.1923,
"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.3595,
"delta": 0.1095,
"percent_delta": 0.4381,
"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.3595,
"delta": 0.1095,
"percent_delta": 0.4381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.269,
"delta": -0.064,
"percent_delta": -0.1923,
"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.214,
"after": 0.0,
"delta": -0.214,
"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.76,
"after": 4.0,
"delta": -0.76,
"percent_delta": -0.1597,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2162,
"delta": -0.0038,
"percent_delta": -0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.282,
"after": 0.0,
"delta": -0.282,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.269,
"delta": -0.032,
"percent_delta": -0.1063,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.519,
"after": 0.0,
"delta": -0.519,
"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.378,
"after": 0.3595,
"delta": -0.0185,
"percent_delta": -0.0489,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.286,
"after": 2.0,
"delta": 0.714,
"percent_delta": 0.5552,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 0,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.286,
"after": 2.0,
"delta": 0.714,
"percent_delta": 0.5552,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.05,
"after": 0.0,
"delta": -1.05,
"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.214 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 4.760 | - |
| predicted_AVG | 0.220 | - |
| predicted_BB | 0.282 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.301 | - |
| predicted_R | 0.519 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.378 | - |
| 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.411 | 0.197 |
| predicted_3B | 0.025 | 0.006 |
| predicted_AB | 8.000 | 3.240 |
| predicted_AVG | 0.221 | 0.001 |
| predicted_BB | 0.581 | 0.299 |
| predicted_H | 1.771 | 0.721 |
| predicted_HBP | 0.254 | - |
| predicted_HR | 0.234 | 0.093 |
| predicted_OBP | 0.297 | -0.004 |
| predicted_R | 1.022 | 0.503 |
| predicted_RBI | 0.711 | 0.291 |
| predicted_SLG | 0.374 | -0.004 |
| predicted_SO | 2.127 | 0.841 |
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.411 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 8.000 | 0.000 |
| predicted_AVG | 0.216 | -0.005 |
| predicted_BB | 0.577 | -0.003 |
| predicted_H | 1.730 | -0.041 |
| predicted_HBP | 0.254 | 0.000 |
| predicted_HR | 0.229 | -0.005 |
| predicted_OBP | 0.269 | -0.028 |
| predicted_R | 0.982 | -0.041 |
| predicted_RBI | 0.682 | -0.028 |
| predicted_SLG | 0.359 | -0.014 |
| predicted_SO | 2.138 | 0.011 |
AB rounded to 8 (raw=8.00), rates preserved: AVG=0.216 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 8.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.411 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 8.000 | 0.000 |
| predicted_AVG | 0.250 | 0.034 |
| predicted_BB | 1.000 | 0.423 |
| predicted_H | 2.000 | 0.270 |
| predicted_HR | 0.000 | -0.229 |
| predicted_OBP | 0.333 | 0.064 |
| predicted_R | 1.000 | 0.018 |
| predicted_RBI | 1.000 | 0.318 |
| predicted_SLG | 0.250 | -0.109 |
| predicted_SO | 2.000 | -0.138 |
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 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 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 | 1.000 | 0.000 | 0.000 | 0.000 | 4.000 | 2.000 | 5.000 | 0.2500 | 0.3478 | 0.3000 | 0.2500 | 0.0000 | 0.0000 | 0.1000 | 0.2500 |
| last_10 | 0.20 | 10 | - | 41.000 | 9.000 | 3.000 | 0.000 | 0.000 | 3.000 | 5.000 | 4.000 | 7.000 | 0.2195 | 0.3043 | 0.2927 | 0.2195 | 0.0000 | 0.0732 | 0.0976 | 0.1707 |
| season | 0.60 | 63 | - | 1119.000 | 237.000 | 56.000 | 5.000 | 54.000 | 137.000 | 136.000 | 74.000 | 337.000 | 0.2118 | 0.2672 | 0.4155 | 0.2118 | 0.0483 | 0.1224 | 0.0661 | 0.3012 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6580 |
| predicted_3B | 0.0330 |
| predicted_AB | 12.0740 |
| predicted_AVG | 0.2217 |
| predicted_BB | 0.9560 |
| predicted_H | 2.6770 |
| predicted_HBP | 0.2540 |
| predicted_HR | 0.3510 |
| predicted_OBP | 0.2913 |
| predicted_R | 1.6550 |
| predicted_RBI | 1.0760 |
| predicted_SLG | 0.3688 |
| predicted_SO | 3.1850 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2140 | 0.6580 | 0.4107 | model_form_blend |
| predicted_3B | 0.0190 | 0.0330 | 0.0252 | model_form_blend |
| predicted_AB | 4.7600 | 12.0740 | 7.9995 | model_form_blend |
| predicted_AVG | 0.2200 | 0.2217 | 0.2208 | model_form_blend |
| predicted_BB | 0.2820 | 0.9560 | 0.5805 | model_form_blend |
| predicted_H | 1.0500 | 2.6770 | 1.7706 | model_form_blend |
| predicted_HBP | - | 0.2540 | 0.2540 | form_only |
| predicted_HR | 0.1400 | 0.3510 | 0.2335 | model_form_blend |
| predicted_OBP | 0.3010 | 0.2913 | 0.2967 | model_form_blend |
| predicted_R | 0.5190 | 1.6550 | 1.0222 | model_form_blend |
| predicted_RBI | 0.4200 | 1.0760 | 0.7106 | model_form_blend |
| predicted_SLG | 0.3780 | 0.3688 | 0.3739 | model_form_blend |
| predicted_SO | 1.2860 | 3.1850 | 2.1271 | 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 | 262 |
| 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.212 |
| 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 | 2 |
| 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 | SS |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 683002 |
| playerID | 683002 |
| playerName | Gunnar Henderson |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.306 |
| sl_xwoba | 0.303 |
| sl_xba | 0.235 |
| sl_xslg | 0.399 |
| sl_sweet_spot_percent | 30.7 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 45.2 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 11.9 |
| sl_whiff_percent | 24.6 |
| 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.058 | 0.000 | 0.000 | Hitting_2B | 0.054 | 0.000 | -0.054 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.833 | 4.000 | 4.000 | Hitting_AB | 2.636 | 4.000 | 1.364 | 0.000 |
| predicted_AVG | 0.286 | 0.000 | 0.250 | Hitting_AVG | 0.215 | 0.500 | -0.215 | -0.500 |
| predicted_BB | 0.367 | 0.000 | 1.000 | Hitting_BB | 0.388 | 0.000 | -0.388 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.031 | 0.000 | -0.031 | 0.000 |
| predicted_H | 0.690 | 0.000 | 1.000 | Hitting_H | 0.566 | 2.000 | -0.566 | -2.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.085 | 1.000 | -0.085 | -1.000 |
| predicted_OBP | 0.342 | 0.000 | 0.400 | Hitting_OBP | 0.312 | 0.500 | -0.312 | -0.500 |
| predicted_R | 0.367 | 0.000 | 1.000 | Hitting_R | 0.380 | 1.000 | -0.380 | -1.000 |
| predicted_RBI | 0.450 | 0.000 | 1.000 | Hitting_RBI | 0.357 | 1.000 | -0.357 | -1.000 |
| predicted_SLG | 0.473 | 0.000 | 0.250 | Hitting_SLG | 0.332 | 1.250 | -0.332 | -1.250 |
| predicted_SO | 1.050 | 1.000 | 1.000 | Hitting_SO | 0.977 | 1.000 | 0.023 | 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.8330 -> 4.0000 (boost 1.1670, better) |
| Biggest Deboost | predicted_H: 0.6900 -> 0.0000 (deboost -0.6900, 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 | 7 | 1 | predicted_AB: 2.8330 -> 3.8484 (boost 1.0154, 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.4848 -> 0.4533 (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 | 3 | 3 | 4 | 2 | predicted_BB: 0.4815 -> 1.0000 (boost 0.5185, better) | predicted_SO: 1.2462 -> 1.0000 (deboost -0.2462, better) | AB rounded to 4 (raw=3.85), rates preserved: AVG=0.259 HR/AB=0.058 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5431 -> 1.0000 (boost 0.4569, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3413 -> 0.4000 (boost 0.0587, better) | predicted_SLG: 0.4533 -> 0.2500 (deboost -0.2033, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | 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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4533 (boost 0.2033, better) | predicted_OBP: 0.4000 -> 0.3413 (deboost -0.0587, 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.058,
"predicted_3B": 0.0,
"predicted_AB": 2.833,
"predicted_AVG": 0.286,
"predicted_BB": 0.367,
"predicted_H": 0.69,
"predicted_HR": 0.14,
"predicted_OBP": 0.342,
"predicted_R": 0.367,
"predicted_RBI": 0.45,
"predicted_SLG": 0.473,
"predicted_SO": 1.05
},
"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.082,
"predicted_3B": 0.0004,
"predicted_AB": 3.8484,
"predicted_AVG": 0.2837,
"predicted_BB": 0.4841,
"predicted_H": 1.0199,
"predicted_HBP": 0.003,
"predicted_HR": 0.2267,
"predicted_OBP": 0.3458,
"predicted_R": 0.5656,
"predicted_RBI": 0.6791,
"predicted_SLG": 0.4848,
"predicted_SO": 1.2396
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.058,
"after": 0.082,
"delta": 0.024,
"percent_delta": 0.4138,
"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.833,
"after": 3.8484,
"delta": 1.0154,
"percent_delta": 0.3584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2837,
"delta": -0.0023,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.367,
"after": 0.4841,
"delta": 0.1171,
"percent_delta": 0.3191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.0199,
"delta": 0.3299,
"percent_delta": 0.4781,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2267,
"delta": 0.0867,
"percent_delta": 0.6193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.3458,
"delta": 0.0038,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.367,
"after": 0.5656,
"delta": 0.1986,
"percent_delta": 0.5411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.6791,
"delta": 0.2291,
"percent_delta": 0.5091,
"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.05,
"after": 1.2396,
"delta": 0.1896,
"percent_delta": 0.1806,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.833,
"after": 3.8484,
"delta": 1.0154,
"percent_delta": 0.3584,
"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": 49
}
},
{
"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.082,
"predicted_3B": 0.0004,
"predicted_AB": 3.8484,
"predicted_AVG": 0.2589,
"predicted_BB": 0.4815,
"predicted_H": 0.9962,
"predicted_HBP": 0.003,
"predicted_HR": 0.2218,
"predicted_OBP": 0.3413,
"predicted_R": 0.5431,
"predicted_RBI": 0.6521,
"predicted_SLG": 0.4533,
"predicted_SO": 1.2462
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.082,
"after": 0.082,
"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.8484,
"after": 3.8484,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2837,
"after": 0.2589,
"delta": -0.0248,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4841,
"after": 0.4815,
"delta": -0.0026,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0199,
"after": 0.9962,
"delta": -0.0237,
"percent_delta": -0.0232,
"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.2267,
"after": 0.2218,
"delta": -0.0049,
"percent_delta": -0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3458,
"after": 0.3413,
"delta": -0.0045,
"percent_delta": -0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5656,
"after": 0.5431,
"delta": -0.0225,
"percent_delta": -0.0398,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6791,
"after": 0.6521,
"delta": -0.027,
"percent_delta": -0.0398,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4848,
"after": 0.4533,
"delta": -0.0315,
"percent_delta": -0.065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2396,
"after": 1.2462,
"delta": 0.0066,
"percent_delta": 0.0053,
"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.4848,
"after": 0.4533,
"delta": -0.0315,
"percent_delta": -0.065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.85), rates preserved: AVG=0.259 HR/AB=0.058",
"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.082,
"after": 0.0,
"delta": -0.082,
"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.8484,
"after": 4.0,
"delta": 0.1516,
"percent_delta": 0.0394,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4815,
"after": 1.0,
"delta": 0.5185,
"percent_delta": 1.0768,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9962,
"after": 1.0,
"delta": 0.0038,
"percent_delta": 0.0038,
"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.2218,
"after": 0.0,
"delta": -0.2218,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6521,
"after": 1.0,
"delta": 0.3479,
"percent_delta": 0.5335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2462,
"after": 1.0,
"delta": -0.2462,
"percent_delta": -0.1976,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.4815,
"after": 1.0,
"delta": 0.5185,
"percent_delta": 1.0768,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.2462,
"after": 1.0,
"delta": -0.2462,
"percent_delta": -0.1976,
"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.5431,
"after": 1.0,
"delta": 0.4569,
"percent_delta": 0.8413,
"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.5431,
"after": 1.0,
"delta": 0.4569,
"percent_delta": 0.8413,
"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.2589,
"after": 0.25,
"delta": -0.0089,
"percent_delta": -0.0344,
"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.3413,
"after": 0.4,
"delta": 0.0587,
"percent_delta": 0.172,
"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.4533,
"after": 0.25,
"delta": -0.2033,
"percent_delta": -0.4485,
"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.3413,
"after": 0.4,
"delta": 0.0587,
"percent_delta": 0.172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4533,
"after": 0.25,
"delta": -0.2033,
"percent_delta": -0.4485,
"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": 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": 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.2589,
"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.3413,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4533,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2589,
"delta": 0.0089,
"percent_delta": 0.0355,
"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.3413,
"delta": -0.0587,
"percent_delta": -0.1468,
"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.4533,
"delta": 0.2033,
"percent_delta": 0.8132,
"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.4533,
"delta": 0.2033,
"percent_delta": 0.8132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3413,
"delta": -0.0587,
"percent_delta": -0.1468,
"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.058,
"after": 0.0,
"delta": -0.058,
"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.833,
"after": 4.0,
"delta": 1.167,
"percent_delta": 0.4119,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2589,
"delta": -0.0271,
"percent_delta": -0.0948,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.367,
"after": 0.0,
"delta": -0.367,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"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.342,
"after": 0.3413,
"delta": -0.0007,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.367,
"after": 0.0,
"delta": -0.367,
"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.473,
"after": 0.4533,
"delta": -0.0197,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.05,
"after": 1.0,
"delta": -0.05,
"percent_delta": -0.0476,
"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.833,
"after": 4.0,
"delta": 1.167,
"percent_delta": 0.4119,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"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.058 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.833 | - |
| predicted_AVG | 0.286 | - |
| predicted_BB | 0.367 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.342 | - |
| predicted_R | 0.367 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.473 | - |
| predicted_SO | 1.050 | - |
Final model 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.082 | 0.024 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.848 | 1.015 |
| predicted_AVG | 0.284 | -0.002 |
| predicted_BB | 0.484 | 0.117 |
| predicted_H | 1.020 | 0.330 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.227 | 0.087 |
| predicted_OBP | 0.346 | 0.004 |
| predicted_R | 0.566 | 0.199 |
| predicted_RBI | 0.679 | 0.229 |
| predicted_SLG | 0.485 | 0.012 |
| predicted_SO | 1.240 | 0.190 |
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.082 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.848 | 0.000 |
| predicted_AVG | 0.259 | -0.025 |
| predicted_BB | 0.481 | -0.003 |
| predicted_H | 0.996 | -0.024 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.222 | -0.005 |
| predicted_OBP | 0.341 | -0.005 |
| predicted_R | 0.543 | -0.022 |
| predicted_RBI | 0.652 | -0.027 |
| predicted_SLG | 0.453 | -0.032 |
| predicted_SO | 1.246 | 0.007 |
AB rounded to 4 (raw=3.85), rates preserved: AVG=0.259 HR/AB=0.058
| 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.082 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.152 |
| predicted_AVG | 0.250 | -0.009 |
| predicted_BB | 1.000 | 0.518 |
| predicted_H | 1.000 | 0.004 |
| predicted_HR | 0.000 | -0.222 |
| predicted_OBP | 0.400 | 0.059 |
| predicted_R | 1.000 | 0.457 |
| predicted_RBI | 1.000 | 0.348 |
| predicted_SLG | 0.250 | -0.203 |
| predicted_SO | 1.000 | -0.246 |
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 | - | 15.000 | 6.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 2.000 | 3.000 | 0.4000 | 0.4444 | 0.8000 | 0.4000 | 0.1333 | 0.2667 | 0.1333 | 0.2000 |
| last_10 | 0.20 | 10 | - | 27.000 | 10.000 | 1.000 | 0.000 | 3.000 | 8.000 | 6.000 | 3.000 | 4.000 | 0.3704 | 0.4194 | 0.7407 | 0.3704 | 0.1111 | 0.2963 | 0.1111 | 0.1482 |
| season | 0.60 | 49 | - | 340.000 | 73.000 | 7.000 | 0.000 | 11.000 | 46.000 | 44.000 | 44.000 | 126.000 | 0.2147 | 0.3015 | 0.3324 | 0.2147 | 0.0323 | 0.1353 | 0.1294 | 0.3706 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1140 |
| predicted_3B | 0.0010 |
| predicted_AB | 5.2000 |
| predicted_AVG | 0.2806 |
| predicted_BB | 0.6400 |
| predicted_H | 1.4590 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3420 |
| predicted_OBP | 0.3508 |
| predicted_R | 0.8300 |
| predicted_RBI | 0.9840 |
| predicted_SLG | 0.5005 |
| predicted_SO | 1.4920 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0580 | 0.1140 | 0.0820 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 2.8330 | 5.2000 | 3.8484 | model_form_blend |
| predicted_AVG | 0.2860 | 0.2806 | 0.2837 | model_form_blend |
| predicted_BB | 0.3670 | 0.6400 | 0.4841 | model_form_blend |
| predicted_H | 0.6900 | 1.4590 | 1.0199 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1400 | 0.3420 | 0.2267 | model_form_blend |
| predicted_OBP | 0.3420 | 0.3508 | 0.3458 | model_form_blend |
| predicted_R | 0.3670 | 0.8300 | 0.5656 | model_form_blend |
| predicted_RBI | 0.4500 | 0.9840 | 0.6791 | model_form_blend |
| predicted_SLG | 0.4730 | 0.5005 | 0.4848 | model_form_blend |
| predicted_SO | 1.0500 | 1.4920 | 1.2396 | 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 | 120 |
| 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.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 | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| 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 | 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 | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 681297 |
| playerID | 681297 |
| playerName | Colton Cowser |
| pos | RF |
| started | True |
| startingPosition | CF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 28.8 |
| sl_bb_percent | 11.0 |
| sl_woba | 0.325 |
| sl_xwoba | 0.315 |
| sl_xba | 0.213 |
| sl_xslg | 0.428 |
| sl_sweet_spot_percent | 30.7 |
| sl_barrel_batted_rate | 12.5 |
| sl_hard_hit_percent | 30.7 |
| sl_exit_velocity_avg | 85.7 |
| sl_launch_angle_avg | 8.5 |
| sl_whiff_percent | 32.3 |
| 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.222 | 0.000 | 0.000 | Hitting_2B | 0.222 | 0.000 | -0.222 | 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 | 7.000 | Hitting_AB | 3.833 | 3.000 | 0.167 | 1.000 |
| predicted_AVG | 0.241 | 0.000 | 0.286 | Hitting_AVG | 0.243 | 0.000 | -0.243 | 0.000 |
| predicted_BB | 0.464 | 0.000 | 1.000 | Hitting_BB | 0.464 | 1.000 | -0.464 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.020 | 0.000 | 2.000 | Hitting_H | 0.933 | 0.000 | -0.933 | 0.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.171 | 0.000 | -0.171 | 0.000 |
| predicted_OBP | 0.331 | 0.000 | 0.375 | Hitting_OBP | 0.325 | 0.250 | -0.325 | -0.250 |
| predicted_R | 0.552 | 0.000 | 1.000 | Hitting_R | 0.552 | 0.000 | -0.552 | 0.000 |
| predicted_RBI | 0.590 | 0.000 | 1.000 | Hitting_RBI | 0.611 | 0.000 | -0.611 | 0.000 |
| predicted_SLG | 0.445 | 0.000 | 0.286 | Hitting_SLG | 0.435 | 0.000 | -0.435 | 0.000 |
| predicted_SO | 1.024 | 2.000 | 2.000 | Hitting_SO | 1.024 | 0.000 | 0.976 | 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: 1.0240 -> 2.0000 (boost 0.9760, worse) |
| Biggest Deboost | predicted_H: 1.0200 -> 0.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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 4.2400 -> 6.9716 (boost 2.7316, 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.4479 -> 0.4366 (deboost -0.0113, 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 | 2 | 3 | predicted_SO: 1.7216 -> 2.0000 (boost 0.2784, worse) | predicted_HR: 0.3441 -> 0.0000 (deboost -0.3441, worse) | AB rounded to 7 (raw=6.97), rates preserved: AVG=0.247 HR/AB=0.049 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3269 -> 0.3750 (boost 0.0481, better) | predicted_SLG: 0.4366 -> 0.2860 (deboost -0.1506, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4366 (boost 0.1506, better) | predicted_OBP: 0.3750 -> 0.3269 (deboost -0.0481, worse) | 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.222,
"predicted_3B": 0.0,
"predicted_AB": 4.24,
"predicted_AVG": 0.241,
"predicted_BB": 0.464,
"predicted_H": 1.02,
"predicted_HR": 0.2,
"predicted_OBP": 0.331,
"predicted_R": 0.552,
"predicted_RBI": 0.59,
"predicted_SLG": 0.445,
"predicted_SO": 1.024
},
"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.2857,
"predicted_3B": 0.0004,
"predicted_AB": 6.9716,
"predicted_AVG": 0.2494,
"predicted_BB": 0.8275,
"predicted_H": 1.766,
"predicted_HBP": 0.034,
"predicted_HR": 0.3517,
"predicted_OBP": 0.3356,
"predicted_R": 1.0132,
"predicted_RBI": 1.0296,
"predicted_SLG": 0.4479,
"predicted_SO": 1.7125
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.222,
"after": 0.2857,
"delta": 0.0637,
"percent_delta": 0.2869,
"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.24,
"after": 6.9716,
"delta": 2.7316,
"percent_delta": 0.6442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2494,
"delta": 0.0084,
"percent_delta": 0.0349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.464,
"after": 0.8275,
"delta": 0.3635,
"percent_delta": 0.7834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.766,
"delta": 0.746,
"percent_delta": 0.7314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.3517,
"delta": 0.1517,
"percent_delta": 0.7585,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.331,
"after": 0.3356,
"delta": 0.0046,
"percent_delta": 0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.552,
"after": 1.0132,
"delta": 0.4612,
"percent_delta": 0.8355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 1.0296,
"delta": 0.4396,
"percent_delta": 0.7451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.445,
"after": 0.4479,
"delta": 0.0029,
"percent_delta": 0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.024,
"after": 1.7125,
"delta": 0.6885,
"percent_delta": 0.6724,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.24,
"after": 6.9716,
"delta": 2.7316,
"percent_delta": 0.6442,
"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.2857,
"predicted_3B": 0.0004,
"predicted_AB": 6.9716,
"predicted_AVG": 0.2474,
"predicted_BB": 0.8231,
"predicted_H": 1.725,
"predicted_HBP": 0.034,
"predicted_HR": 0.3441,
"predicted_OBP": 0.3269,
"predicted_R": 0.973,
"predicted_RBI": 0.9887,
"predicted_SLG": 0.4366,
"predicted_SO": 1.7216
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2857,
"after": 0.2857,
"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": 6.9716,
"after": 6.9716,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2494,
"after": 0.2474,
"delta": -0.002,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8275,
"after": 0.8231,
"delta": -0.0044,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.766,
"after": 1.725,
"delta": -0.041,
"percent_delta": -0.0232,
"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.3517,
"after": 0.3441,
"delta": -0.0076,
"percent_delta": -0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3356,
"after": 0.3269,
"delta": -0.0087,
"percent_delta": -0.0259,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0132,
"after": 0.973,
"delta": -0.0402,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0296,
"after": 0.9887,
"delta": -0.0409,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4479,
"after": 0.4366,
"delta": -0.0113,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7125,
"after": 1.7216,
"delta": 0.0091,
"percent_delta": 0.0053,
"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.4479,
"after": 0.4366,
"delta": -0.0113,
"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 7 (raw=6.97), rates preserved: AVG=0.247 HR/AB=0.049",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2857,
"after": 0.0,
"delta": -0.2857,
"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": 6.9716,
"after": 7.0,
"delta": 0.0284,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8231,
"after": 1.0,
"delta": 0.1769,
"percent_delta": 0.2149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.725,
"after": 2.0,
"delta": 0.275,
"percent_delta": 0.1594,
"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.3441,
"after": 0.0,
"delta": -0.3441,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9887,
"after": 1.0,
"delta": 0.0113,
"percent_delta": 0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.7216,
"after": 2.0,
"delta": 0.2784,
"percent_delta": 0.1617,
"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_SO",
"before": 1.7216,
"after": 2.0,
"delta": 0.2784,
"percent_delta": 0.1617,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3441,
"after": 0.0,
"delta": -0.3441,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.973,
"after": 1.0,
"delta": 0.027,
"percent_delta": 0.0277,
"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_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": {}
},
{
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2474,
"after": 0.286,
"delta": 0.0386,
"percent_delta": 0.156,
"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": 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_OBP",
"before": 0.3269,
"after": 0.375,
"delta": 0.0481,
"percent_delta": 0.1471,
"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.4366,
"after": 0.286,
"delta": -0.1506,
"percent_delta": -0.3449,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3269,
"after": 0.375,
"delta": 0.0481,
"percent_delta": 0.1471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4366,
"after": 0.286,
"delta": -0.1506,
"percent_delta": -0.3449,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2474,
"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.3269,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4366,
"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.286,
"after": 0.2474,
"delta": -0.0386,
"percent_delta": -0.1348,
"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.375,
"after": 0.3269,
"delta": -0.0481,
"percent_delta": -0.1282,
"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.286,
"after": 0.4366,
"delta": 0.1506,
"percent_delta": 0.5266,
"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.286,
"after": 0.4366,
"delta": 0.1506,
"percent_delta": 0.5266,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3269,
"delta": -0.0481,
"percent_delta": -0.1282,
"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": 4.24,
"after": 4.0,
"delta": -0.24,
"percent_delta": -0.0566,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2474,
"delta": 0.0064,
"percent_delta": 0.0266,
"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": 1.02,
"after": 0.0,
"delta": -1.02,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.331,
"after": 0.3269,
"delta": -0.0041,
"percent_delta": -0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.552,
"after": 0.0,
"delta": -0.552,
"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.445,
"after": 0.4366,
"delta": -0.0084,
"percent_delta": -0.0189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.024,
"after": 2.0,
"delta": 0.976,
"percent_delta": 0.9531,
"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.024,
"after": 2.0,
"delta": 0.976,
"percent_delta": 0.9531,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.02,
"after": 0.0,
"delta": -1.02,
"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 | 4.240 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.464 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.331 | - |
| predicted_R | 0.552 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.445 | - |
| predicted_SO | 1.024 | - |
Final model 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.064 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.972 | 2.732 |
| predicted_AVG | 0.249 | 0.008 |
| predicted_BB | 0.828 | 0.363 |
| predicted_H | 1.766 | 0.746 |
| predicted_HBP | 0.034 | - |
| predicted_HR | 0.352 | 0.152 |
| predicted_OBP | 0.336 | 0.005 |
| predicted_R | 1.013 | 0.461 |
| predicted_RBI | 1.030 | 0.440 |
| predicted_SLG | 0.448 | 0.003 |
| predicted_SO | 1.712 | 0.688 |
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.000 | 0.000 |
| predicted_AB | 6.972 | 0.000 |
| predicted_AVG | 0.247 | -0.002 |
| predicted_BB | 0.823 | -0.004 |
| predicted_H | 1.725 | -0.041 |
| predicted_HBP | 0.034 | 0.000 |
| predicted_HR | 0.344 | -0.008 |
| predicted_OBP | 0.327 | -0.009 |
| predicted_R | 0.973 | -0.040 |
| predicted_RBI | 0.989 | -0.041 |
| predicted_SLG | 0.437 | -0.011 |
| predicted_SO | 1.722 | 0.009 |
AB rounded to 7 (raw=6.97), rates preserved: AVG=0.247 HR/AB=0.049
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.286 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.028 |
| predicted_AVG | 0.286 | 0.039 |
| predicted_BB | 1.000 | 0.177 |
| predicted_H | 2.000 | 0.275 |
| predicted_HR | 0.000 | -0.344 |
| predicted_OBP | 0.375 | 0.048 |
| predicted_R | 1.000 | 0.027 |
| predicted_RBI | 1.000 | 0.011 |
| predicted_SLG | 0.286 | -0.151 |
| predicted_SO | 2.000 | 0.278 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 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 | 5.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 4.000 | 0.2632 | 0.3636 | 0.4211 | 0.2632 | 0.0526 | 0.1053 | 0.1579 | 0.2105 |
| last_10 | 0.20 | 10 | - | 39.000 | 12.000 | 0.000 | 0.000 | 3.000 | 7.000 | 7.000 | 4.000 | 9.000 | 0.3077 | 0.3721 | 0.5385 | 0.3077 | 0.0769 | 0.1795 | 0.1026 | 0.2308 |
| season | 0.60 | 64 | - | 966.000 | 235.000 | 56.000 | 0.000 | 43.000 | 154.000 | 139.000 | 117.000 | 258.000 | 0.2433 | 0.3251 | 0.4348 | 0.2433 | 0.0445 | 0.1594 | 0.1211 | 0.2671 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3660 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.4170 |
| predicted_AVG | 0.2599 |
| predicted_BB | 1.2860 |
| predicted_H | 2.7070 |
| predicted_HBP | 0.0340 |
| predicted_HR | 0.5430 |
| predicted_OBP | 0.3414 |
| predicted_R | 1.5950 |
| predicted_RBI | 1.5840 |
| predicted_SLG | 0.4516 |
| predicted_SO | 2.5810 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2220 | 0.3660 | 0.2857 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2400 | 10.4170 | 6.9716 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2599 | 0.2494 | model_form_blend |
| predicted_BB | 0.4640 | 1.2860 | 0.8275 | model_form_blend |
| predicted_H | 1.0200 | 2.7070 | 1.7660 | model_form_blend |
| predicted_HBP | - | 0.0340 | 0.0340 | form_only |
| predicted_HR | 0.2000 | 0.5430 | 0.3517 | model_form_blend |
| predicted_OBP | 0.3310 | 0.3414 | 0.3356 | model_form_blend |
| predicted_R | 0.5520 | 1.5950 | 1.0132 | model_form_blend |
| predicted_RBI | 0.5900 | 1.5840 | 1.0296 | model_form_blend |
| predicted_SLG | 0.4450 | 0.4516 | 0.4479 | model_form_blend |
| predicted_SO | 1.0240 | 2.5810 | 1.7125 | 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 | 252 |
| 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.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 | 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 | 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 | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 624413 |
| playerID | 624413 |
| playerName | Pete Alonso |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 10.6 |
| sl_woba | 0.338 |
| sl_xwoba | 0.37 |
| sl_xba | 0.272 |
| sl_xslg | 0.514 |
| sl_sweet_spot_percent | 32.3 |
| sl_barrel_batted_rate | 12.2 |
| sl_hard_hit_percent | 56.1 |
| sl_exit_velocity_avg | 95.0 |
| sl_launch_angle_avg | 14.7 |
| sl_whiff_percent | 27.4 |
| sl_swing_percent | 44.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.281 | 0.000 | 0.000 | Hitting_2B | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.260 | 3.000 | 7.000 | Hitting_AB | 3.673 | 4.000 | -0.673 | -1.000 |
| predicted_AVG | 0.247 | 0.000 | 0.286 | Hitting_AVG | 0.263 | 0.250 | -0.263 | -0.250 |
| predicted_BB | 0.896 | 1.000 | 1.000 | Hitting_BB | 0.896 | 0.000 | 0.104 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.031 | 0.000 | -0.031 | 0.000 |
| predicted_H | 1.050 | 0.000 | 2.000 | Hitting_H | 0.965 | 1.000 | -0.965 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.038 | 1.000 | -0.038 | -1.000 |
| predicted_OBP | 0.372 | 0.250 | 0.375 | Hitting_OBP | 0.407 | 0.250 | -0.157 | 0.000 |
| predicted_R | 0.588 | 0.000 | 1.000 | Hitting_R | 0.588 | 1.000 | -0.588 | -1.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.292 | 2.000 | -0.292 | -2.000 |
| predicted_SLG | 0.396 | 0.000 | 0.286 | Hitting_SLG | 0.371 | 1.000 | -0.371 | -1.000 |
| predicted_SO | 0.912 | 1.000 | 2.000 | Hitting_SO | 0.912 | 0.000 | 0.088 | 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.8960 -> 1.0000 (boost 0.1040, better) |
| Biggest Deboost | predicted_AB: 4.2600 -> 3.0000 (deboost -1.2600, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.2600 -> 7.0447 (boost 2.7847, 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.4038 -> 0.3977 (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 | 6 | 3 | 3 | 2 | 4 | predicted_RBI: 0.6681 -> 1.0000 (boost 0.3319, better) | predicted_BB: 1.4410 -> 1.0000 (deboost -0.4410, worse) | AB rounded to 7 (raw=7.04), rates preserved: AVG=0.269 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0733 -> 1.0000 (deboost -0.0733, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2685 -> 0.2860 (boost 0.0175, better) | predicted_SLG: 0.3977 -> 0.2860 (deboost -0.1117, 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: 7.0000 -> 3.0000 (deboost -4.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2860 -> 0.3977 (boost 0.1117, better) | predicted_AVG: 0.2860 -> 0.2685 (deboost -0.0175, 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.281,
"predicted_3B": 0.0,
"predicted_AB": 4.26,
"predicted_AVG": 0.247,
"predicted_BB": 0.896,
"predicted_H": 1.05,
"predicted_HR": 0.11,
"predicted_OBP": 0.372,
"predicted_R": 0.588,
"predicted_RBI": 0.43,
"predicted_SLG": 0.396,
"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.4378,
"predicted_3B": 0.0004,
"predicted_AB": 7.0447,
"predicted_AVG": 0.2657,
"predicted_BB": 1.4487,
"predicted_H": 1.9366,
"predicted_HBP": 0.035,
"predicted_HR": 0.1605,
"predicted_OBP": 0.3886,
"predicted_R": 1.1177,
"predicted_RBI": 0.6957,
"predicted_SLG": 0.4038,
"predicted_SO": 1.7295
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.281,
"after": 0.4378,
"delta": 0.1568,
"percent_delta": 0.558,
"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.26,
"after": 7.0447,
"delta": 2.7847,
"percent_delta": 0.6537,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2657,
"delta": 0.0187,
"percent_delta": 0.0757,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.896,
"after": 1.4487,
"delta": 0.5527,
"percent_delta": 0.6169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.9366,
"delta": 0.8866,
"percent_delta": 0.8444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1605,
"delta": 0.0505,
"percent_delta": 0.4591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.372,
"after": 0.3886,
"delta": 0.0166,
"percent_delta": 0.0446,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.588,
"after": 1.1177,
"delta": 0.5297,
"percent_delta": 0.9009,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.6957,
"delta": 0.2657,
"percent_delta": 0.6179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.396,
"after": 0.4038,
"delta": 0.0078,
"percent_delta": 0.0197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.912,
"after": 1.7295,
"delta": 0.8175,
"percent_delta": 0.8964,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.26,
"after": 7.0447,
"delta": 2.7847,
"percent_delta": 0.6537,
"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": 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.4378,
"predicted_3B": 0.0004,
"predicted_AB": 7.0447,
"predicted_AVG": 0.2685,
"predicted_BB": 1.441,
"predicted_H": 1.8917,
"predicted_HBP": 0.035,
"predicted_HR": 0.157,
"predicted_OBP": 0.3927,
"predicted_R": 1.0733,
"predicted_RBI": 0.6681,
"predicted_SLG": 0.3977,
"predicted_SO": 1.7387
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4378,
"after": 0.4378,
"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": 7.0447,
"after": 7.0447,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2657,
"after": 0.2685,
"delta": 0.0028,
"percent_delta": 0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.4487,
"after": 1.441,
"delta": -0.0077,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9366,
"after": 1.8917,
"delta": -0.0449,
"percent_delta": -0.0232,
"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.1605,
"after": 0.157,
"delta": -0.0035,
"percent_delta": -0.0218,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3886,
"after": 0.3927,
"delta": 0.0041,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.1177,
"after": 1.0733,
"delta": -0.0444,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6957,
"after": 0.6681,
"delta": -0.0276,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4038,
"after": 0.3977,
"delta": -0.0061,
"percent_delta": -0.0151,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7295,
"after": 1.7387,
"delta": 0.0092,
"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.4038,
"after": 0.3977,
"delta": -0.0061,
"percent_delta": -0.0151,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.04), rates preserved: AVG=0.269 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4378,
"after": 0.0,
"delta": -0.4378,
"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": 7.0447,
"after": 7.0,
"delta": -0.0447,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.441,
"after": 1.0,
"delta": -0.441,
"percent_delta": -0.306,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8917,
"after": 2.0,
"delta": 0.1083,
"percent_delta": 0.0573,
"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.157,
"after": 0.0,
"delta": -0.157,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6681,
"after": 1.0,
"delta": 0.3319,
"percent_delta": 0.4968,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7387,
"after": 2.0,
"delta": 0.2613,
"percent_delta": 0.1503,
"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_RBI",
"before": 0.6681,
"after": 1.0,
"delta": 0.3319,
"percent_delta": 0.4968,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.441,
"after": 1.0,
"delta": -0.441,
"percent_delta": -0.306,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.0733,
"after": 1.0,
"delta": -0.0733,
"percent_delta": -0.0683,
"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": 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_R",
"before": 1.0733,
"after": 1.0,
"delta": -0.0733,
"percent_delta": -0.0683,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2685,
"after": 0.286,
"delta": 0.0175,
"percent_delta": 0.0652,
"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": 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_OBP",
"before": 0.3927,
"after": 0.375,
"delta": -0.0177,
"percent_delta": -0.0451,
"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.3977,
"after": 0.286,
"delta": -0.1117,
"percent_delta": -0.2809,
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2685,
"after": 0.286,
"delta": 0.0175,
"percent_delta": 0.0652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3977,
"after": 0.286,
"delta": -0.1117,
"percent_delta": -0.2809,
"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": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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": 0.0,
"delta": -2.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": 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": 0,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 3.0,
"delta": -4.0,
"percent_delta": -0.5714,
"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.2685,
"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.3927,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3977,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2685,
"delta": -0.0175,
"percent_delta": -0.0611,
"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.375,
"after": 0.3927,
"delta": 0.0177,
"percent_delta": 0.0473,
"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.286,
"after": 0.3977,
"delta": 0.1117,
"percent_delta": 0.3904,
"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.286,
"after": 0.3977,
"delta": 0.1117,
"percent_delta": 0.3904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2685,
"delta": -0.0175,
"percent_delta": -0.0611,
"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.281,
"after": 0.0,
"delta": -0.281,
"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": 3.0,
"delta": -1.26,
"percent_delta": -0.2958,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2685,
"delta": 0.0215,
"percent_delta": 0.087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.896,
"after": 1.0,
"delta": 0.104,
"percent_delta": 0.1161,
"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.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.372,
"after": 0.3927,
"delta": 0.0207,
"percent_delta": 0.0556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.588,
"after": 0.0,
"delta": -0.588,
"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.396,
"after": 0.3977,
"delta": 0.0017,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.912,
"after": 1.0,
"delta": 0.088,
"percent_delta": 0.0965,
"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.896,
"after": 1.0,
"delta": 0.104,
"percent_delta": 0.1161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.26,
"after": 3.0,
"delta": -1.26,
"percent_delta": -0.2958,
"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.281 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.260 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.896 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.372 | - |
| predicted_R | 0.588 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.396 | - |
| 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.438 | 0.157 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.045 | 2.785 |
| predicted_AVG | 0.266 | 0.019 |
| predicted_BB | 1.449 | 0.553 |
| predicted_H | 1.937 | 0.887 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.161 | 0.051 |
| predicted_OBP | 0.389 | 0.017 |
| predicted_R | 1.118 | 0.530 |
| predicted_RBI | 0.696 | 0.266 |
| predicted_SLG | 0.404 | 0.008 |
| predicted_SO | 1.730 | 0.818 |
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.438 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.045 | 0.000 |
| predicted_AVG | 0.269 | 0.003 |
| predicted_BB | 1.441 | -0.008 |
| predicted_H | 1.892 | -0.045 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.157 | -0.004 |
| predicted_OBP | 0.393 | 0.004 |
| predicted_R | 1.073 | -0.044 |
| predicted_RBI | 0.668 | -0.028 |
| predicted_SLG | 0.398 | -0.006 |
| predicted_SO | 1.739 | 0.009 |
AB rounded to 7 (raw=7.04), rates preserved: AVG=0.269 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.438 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.045 |
| predicted_AVG | 0.286 | 0.017 |
| predicted_BB | 1.000 | -0.441 |
| predicted_H | 2.000 | 0.108 |
| predicted_HR | 0.000 | -0.157 |
| predicted_OBP | 0.375 | -0.018 |
| predicted_R | 1.000 | -0.073 |
| predicted_RBI | 1.000 | 0.332 |
| predicted_SLG | 0.286 | -0.112 |
| predicted_SO | 2.000 | 0.261 |
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 | -4.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -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 | 1.000 | 0.000 | 1.000 | 3.000 | 4.000 | 2.000 | 6.000 | 0.3810 | 0.4348 | 0.5714 | 0.3810 | 0.0476 | 0.1429 | 0.0952 | 0.2857 |
| last_10 | 0.20 | 10 | - | 39.000 | 11.000 | 1.000 | 0.000 | 1.000 | 4.000 | 7.000 | 8.000 | 11.000 | 0.2821 | 0.4043 | 0.3846 | 0.2821 | 0.0256 | 0.1026 | 0.2051 | 0.2821 |
| season | 0.60 | 63 | - | 955.000 | 251.000 | 73.000 | 0.000 | 10.000 | 76.000 | 153.000 | 233.000 | 237.000 | 0.2628 | 0.4068 | 0.3707 | 0.2628 | 0.0105 | 0.0796 | 0.2440 | 0.2482 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6350 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.5480 |
| predicted_AVG | 0.2893 |
| predicted_BB | 2.1440 |
| predicted_H | 3.0520 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.2240 |
| predicted_OBP | 0.4095 |
| predicted_R | 1.7840 |
| predicted_RBI | 1.0300 |
| predicted_SLG | 0.4135 |
| predicted_SO | 2.7580 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2810 | 0.6350 | 0.4378 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2600 | 10.5480 | 7.0447 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2893 | 0.2657 | model_form_blend |
| predicted_BB | 0.8960 | 2.1440 | 1.4487 | model_form_blend |
| predicted_H | 1.0500 | 3.0520 | 1.9366 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1100 | 0.2240 | 0.1605 | model_form_blend |
| predicted_OBP | 0.3720 | 0.4095 | 0.3886 | model_form_blend |
| predicted_R | 0.5880 | 1.7840 | 1.1177 | model_form_blend |
| predicted_RBI | 0.4300 | 1.0300 | 0.6957 | model_form_blend |
| predicted_SLG | 0.3960 | 0.4135 | 0.4038 | model_form_blend |
| predicted_SO | 0.9120 | 2.7580 | 1.7295 | 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 | 260 |
| 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.263 |
| 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 | 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 | LF |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 621493 |
| playerID | 621493 |
| playerName | Taylor Ward |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.1 |
| sl_bb_percent | 18.8 |
| sl_woba | 0.349 |
| sl_xwoba | 0.349 |
| sl_xba | 0.252 |
| sl_xslg | 0.371 |
| sl_sweet_spot_percent | 36.0 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 40.4 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 13.8 |
| sl_whiff_percent | 18.7 |
| sl_swing_percent | 31.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.202 | 1.000 | 0.000 | Hitting_2B | 0.199 | 0.000 | 0.801 | 1.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_AB | 3.381 | 4.000 | 5.000 | Hitting_AB | 3.322 | 1.000 | 0.678 | 3.000 |
| predicted_AVG | 0.234 | 0.500 | 0.200 | Hitting_AVG | 0.271 | 0.000 | 0.229 | 0.500 |
| predicted_BB | 0.452 | 0.000 | 1.000 | Hitting_BB | 0.450 | 0.000 | -0.450 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_H | 0.300 | 2.000 | 1.000 | Hitting_H | 0.901 | 0.000 | 1.099 | 2.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_OBP | 0.280 | 0.500 | 0.333 | Hitting_OBP | 0.362 | 0.000 | 0.138 | 0.500 |
| predicted_R | 0.512 | 0.000 | 1.000 | Hitting_R | 0.503 | 0.000 | -0.503 | 0.000 |
| predicted_RBI | 0.190 | 0.000 | 1.000 | Hitting_RBI | 0.538 | 0.000 | -0.538 | 0.000 |
| predicted_SLG | 0.337 | 0.750 | 0.200 | Hitting_SLG | 0.396 | 0.000 | 0.354 | 0.750 |
| predicted_SO | 0.810 | 1.000 | 1.000 | Hitting_SO | 0.795 | 1.000 | 0.205 | 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 | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_H: 0.3000 -> 2.0000 (boost 1.7000, better) |
| Biggest Deboost | predicted_R: 0.5120 -> 0.0000 (deboost -0.5120, 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 | 7 | 1 | 6 | 2 | predicted_AB: 3.3810 -> 5.4449 (boost 2.0639, better) | predicted_SLG: 0.3370 -> 0.3276 (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.3276 -> 0.2680 (deboost -0.0596, 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.5791 -> 1.0000 (boost 0.4209, better) | predicted_AB: 5.4449 -> 5.0000 (deboost -0.4449, worse) | AB rounded to 5 (raw=5.44), rates preserved: AVG=0.173 HR/AB=0.010 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6755 -> 1.0000 (boost 0.3245, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2576 -> 0.3330 (boost 0.0754, better) | predicted_SLG: 0.2680 -> 0.2000 (deboost -0.0680, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 2 | 4 | 2 | 4 | 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2000 -> 0.2680 (boost 0.0680, better) | predicted_OBP: 0.3330 -> 0.2576 (deboost -0.0754, 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.202,
"predicted_3B": 0.03,
"predicted_AB": 3.381,
"predicted_AVG": 0.234,
"predicted_BB": 0.452,
"predicted_H": 0.3,
"predicted_HR": 0.03,
"predicted_OBP": 0.28,
"predicted_R": 0.512,
"predicted_RBI": 0.19,
"predicted_SLG": 0.337,
"predicted_SO": 0.81
},
"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.2479,
"predicted_3B": 0.0527,
"predicted_AB": 5.4449,
"predicted_AVG": 0.2298,
"predicted_BB": 0.6242,
"predicted_H": 0.9643,
"predicted_HBP": 0.037,
"predicted_HR": 0.0558,
"predicted_OBP": 0.288,
"predicted_R": 0.7034,
"predicted_RBI": 0.603,
"predicted_SLG": 0.3276,
"predicted_SO": 1.3703
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.2479,
"delta": 0.0459,
"percent_delta": 0.2272,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0527,
"delta": 0.0227,
"percent_delta": 0.7567,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.381,
"after": 5.4449,
"delta": 2.0639,
"percent_delta": 0.6104,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2298,
"delta": -0.0042,
"percent_delta": -0.0179,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.452,
"after": 0.6242,
"delta": 0.1722,
"percent_delta": 0.381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.9643,
"delta": 0.6643,
"percent_delta": 2.2143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0558,
"delta": 0.0258,
"percent_delta": 0.86,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.28,
"after": 0.288,
"delta": 0.008,
"percent_delta": 0.0286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.512,
"after": 0.7034,
"delta": 0.1914,
"percent_delta": 0.3738,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.603,
"delta": 0.413,
"percent_delta": 2.1737,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.337,
"after": 0.3276,
"delta": -0.0094,
"percent_delta": -0.0279,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.81,
"after": 1.3703,
"delta": 0.5603,
"percent_delta": 0.6917,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.381,
"after": 5.4449,
"delta": 2.0639,
"percent_delta": 0.6104,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.337,
"after": 0.3276,
"delta": -0.0094,
"percent_delta": -0.0279,
"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": 9,
"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.2479,
"predicted_3B": 0.0527,
"predicted_AB": 5.4449,
"predicted_AVG": 0.173,
"predicted_BB": 0.6209,
"predicted_H": 0.9419,
"predicted_HBP": 0.037,
"predicted_HR": 0.0546,
"predicted_OBP": 0.2576,
"predicted_R": 0.6755,
"predicted_RBI": 0.5791,
"predicted_SLG": 0.268,
"predicted_SO": 1.3776
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2479,
"after": 0.2479,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0527,
"after": 0.0527,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.4449,
"after": 5.4449,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2298,
"after": 0.173,
"delta": -0.0568,
"percent_delta": -0.2472,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6242,
"after": 0.6209,
"delta": -0.0033,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9643,
"after": 0.9419,
"delta": -0.0224,
"percent_delta": -0.0232,
"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.0558,
"after": 0.0546,
"delta": -0.0012,
"percent_delta": -0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2576,
"delta": -0.0304,
"percent_delta": -0.1056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7034,
"after": 0.6755,
"delta": -0.0279,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.603,
"after": 0.5791,
"delta": -0.0239,
"percent_delta": -0.0396,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3276,
"after": 0.268,
"delta": -0.0596,
"percent_delta": -0.1819,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3703,
"after": 1.3776,
"delta": 0.0073,
"percent_delta": 0.0053,
"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.3276,
"after": 0.268,
"delta": -0.0596,
"percent_delta": -0.1819,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.44), rates preserved: AVG=0.173 HR/AB=0.010",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.2479,
"after": 0.0,
"delta": -0.2479,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0527,
"after": 0.0,
"delta": -0.0527,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.4449,
"after": 5.0,
"delta": -0.4449,
"percent_delta": -0.0817,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6209,
"after": 1.0,
"delta": 0.3791,
"percent_delta": 0.6106,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9419,
"after": 1.0,
"delta": 0.0581,
"percent_delta": 0.0617,
"direction": "boost",
"projection_effect": "better",
"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.0546,
"after": 0.0,
"delta": -0.0546,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5791,
"after": 1.0,
"delta": 0.4209,
"percent_delta": 0.7268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3776,
"after": 1.0,
"delta": -0.3776,
"percent_delta": -0.2741,
"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.5791,
"after": 1.0,
"delta": 0.4209,
"percent_delta": 0.7268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.4449,
"after": 5.0,
"delta": -0.4449,
"percent_delta": -0.0817,
"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": 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": 5.0,
"after": 5.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.6755,
"after": 1.0,
"delta": 0.3245,
"percent_delta": 0.4804,
"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.6755,
"after": 1.0,
"delta": 0.3245,
"percent_delta": 0.4804,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.173,
"after": 0.2,
"delta": 0.027,
"percent_delta": 0.1561,
"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.2576,
"after": 0.333,
"delta": 0.0754,
"percent_delta": 0.2927,
"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.268,
"after": 0.2,
"delta": -0.068,
"percent_delta": -0.2537,
"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.2576,
"after": 0.333,
"delta": 0.0754,
"percent_delta": 0.2927,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.268,
"after": 0.2,
"delta": -0.068,
"percent_delta": -0.2537,
"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": 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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"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": 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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"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_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.173,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2576,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.268,
"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.2,
"after": 0.173,
"delta": -0.027,
"percent_delta": -0.135,
"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.2576,
"delta": -0.0754,
"percent_delta": -0.2263,
"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.2,
"after": 0.268,
"delta": 0.068,
"percent_delta": 0.3398,
"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.2,
"after": 0.268,
"delta": 0.068,
"percent_delta": 0.3398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2576,
"delta": -0.0754,
"percent_delta": -0.2263,
"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.202,
"after": 1.0,
"delta": 0.798,
"percent_delta": 3.9505,
"direction": "boost",
"projection_effect": "better",
"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.381,
"after": 4.0,
"delta": 0.619,
"percent_delta": 0.1831,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.173,
"delta": -0.061,
"percent_delta": -0.2607,
"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.3,
"after": 2.0,
"delta": 1.7,
"percent_delta": 5.6667,
"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.28,
"after": 0.2576,
"delta": -0.0224,
"percent_delta": -0.08,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.512,
"after": 0.0,
"delta": -0.512,
"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.337,
"after": 0.268,
"delta": -0.069,
"percent_delta": -0.2047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.81,
"after": 1.0,
"delta": 0.19,
"percent_delta": 0.2346,
"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_H",
"before": 0.3,
"after": 2.0,
"delta": 1.7,
"percent_delta": 5.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.512,
"after": 0.0,
"delta": -0.512,
"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.202 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.381 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.452 | - |
| predicted_H | 0.300 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.280 | - |
| predicted_R | 0.512 | - |
| predicted_RBI | 0.190 | - |
| predicted_SLG | 0.337 | - |
| predicted_SO | 0.810 | - |
Final model 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.248 | 0.046 |
| predicted_3B | 0.053 | 0.023 |
| predicted_AB | 5.445 | 2.064 |
| predicted_AVG | 0.230 | -0.004 |
| predicted_BB | 0.624 | 0.172 |
| predicted_H | 0.964 | 0.664 |
| predicted_HBP | 0.037 | - |
| predicted_HR | 0.056 | 0.026 |
| predicted_OBP | 0.288 | 0.008 |
| predicted_R | 0.703 | 0.191 |
| predicted_RBI | 0.603 | 0.413 |
| predicted_SLG | 0.328 | -0.009 |
| predicted_SO | 1.370 | 0.560 |
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.248 | 0.000 |
| predicted_3B | 0.053 | 0.000 |
| predicted_AB | 5.445 | 0.000 |
| predicted_AVG | 0.173 | -0.057 |
| predicted_BB | 0.621 | -0.003 |
| predicted_H | 0.942 | -0.022 |
| predicted_HBP | 0.037 | 0.000 |
| predicted_HR | 0.055 | -0.001 |
| predicted_OBP | 0.258 | -0.030 |
| predicted_R | 0.675 | -0.028 |
| predicted_RBI | 0.579 | -0.024 |
| predicted_SLG | 0.268 | -0.060 |
| predicted_SO | 1.378 | 0.007 |
AB rounded to 5 (raw=5.44), rates preserved: AVG=0.173 HR/AB=0.010
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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 | 5.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.248 |
| predicted_3B | 0.000 | -0.053 |
| predicted_AB | 5.000 | -0.445 |
| predicted_AVG | 0.200 | 0.027 |
| predicted_BB | 1.000 | 0.379 |
| predicted_H | 1.000 | 0.058 |
| predicted_HR | 0.000 | -0.055 |
| predicted_OBP | 0.333 | 0.075 |
| predicted_R | 1.000 | 0.325 |
| predicted_RBI | 1.000 | 0.421 |
| predicted_SLG | 0.200 | -0.068 |
| predicted_SO | 1.000 | -0.378 |
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 | -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 | 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 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 1.000 | 5.000 | 0.1176 | 0.1667 | 0.1176 | 0.1177 | 0.0000 | 0.1177 | 0.0588 | 0.2941 |
| last_10 | 0.20 | 9 | - | 34.000 | 6.000 | 0.000 | 1.000 | 0.000 | 3.000 | 2.000 | 2.000 | 10.000 | 0.1765 | 0.2222 | 0.2353 | 0.1765 | 0.0000 | 0.0882 | 0.0588 | 0.2941 |
| season | 0.60 | 51 | - | 568.000 | 154.000 | 34.000 | 5.000 | 9.000 | 92.000 | 86.000 | 76.000 | 136.000 | 0.2711 | 0.3611 | 0.3961 | 0.2711 | 0.0158 | 0.1620 | 0.1338 | 0.2394 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3070 |
| predicted_3B | 0.0820 |
| predicted_AB | 8.1030 |
| predicted_AVG | 0.2245 |
| predicted_BB | 0.8460 |
| predicted_H | 1.8200 |
| predicted_HBP | 0.0370 |
| predicted_HR | 0.0890 |
| predicted_OBP | 0.2982 |
| predicted_R | 0.9500 |
| predicted_RBI | 1.1350 |
| predicted_SLG | 0.3156 |
| predicted_SO | 2.0920 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2020 | 0.3070 | 0.2479 | model_form_blend |
| predicted_3B | 0.0300 | 0.0820 | 0.0527 | model_form_blend |
| predicted_AB | 3.3810 | 8.1030 | 5.4449 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2245 | 0.2298 | model_form_blend |
| predicted_BB | 0.4520 | 0.8460 | 0.6242 | model_form_blend |
| predicted_H | 0.3000 | 1.8200 | 0.9643 | model_form_blend |
| predicted_HBP | - | 0.0370 | 0.0370 | form_only |
| predicted_HR | 0.0300 | 0.0890 | 0.0558 | model_form_blend |
| predicted_OBP | 0.2800 | 0.2982 | 0.2880 | model_form_blend |
| predicted_R | 0.5120 | 0.9500 | 0.7034 | model_form_blend |
| predicted_RBI | 0.1900 | 1.1350 | 0.6030 | model_form_blend |
| predicted_SLG | 0.3370 | 0.3156 | 0.3276 | model_form_blend |
| predicted_SO | 0.8100 | 2.0920 | 1.3703 | 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 | 168 |
| 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 | 0 |
| RBI | 0 |
| 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 | 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 | 5 |
| 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 | 20260607_BAL@TOR |
| game_type | ph |
| mlbID | 665750 |
| note | Struck out for Basallo in the 8th. |
| playerID | 665750 |
| playerName | Leody Taveras |
| pos | CF |
| started | False |
| startingPosition | PH |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.9 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.326 |
| sl_xwoba | 0.307 |
| sl_xba | 0.241 |
| sl_xslg | 0.343 |
| sl_sweet_spot_percent | 33.1 |
| sl_barrel_batted_rate | 3.9 |
| sl_hard_hit_percent | 26.8 |
| sl_exit_velocity_avg | 86.4 |
| sl_launch_angle_avg | 15.7 |
| sl_whiff_percent | 25.3 |
| sl_swing_percent | 46.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.134 | 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.331 | 2.000 | 5.000 | Hitting_AB | 3.269 | 4.000 | -1.269 | -2.000 |
| predicted_AVG | 0.235 | 0.000 | 0.200 | Hitting_AVG | 0.212 | 0.000 | -0.212 | 0.000 |
| predicted_BB | 0.331 | 1.000 | 0.000 | Hitting_BB | 0.325 | 0.000 | 0.675 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.720 | 0.000 | 1.000 | Hitting_H | 0.694 | 0.000 | -0.694 | 0.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.144 | 0.000 | -0.144 | 0.000 |
| predicted_OBP | 0.278 | 0.333 | 0.200 | Hitting_OBP | 0.287 | 0.000 | 0.047 | 0.333 |
| predicted_R | 0.446 | 0.000 | 1.000 | Hitting_R | 0.444 | 0.000 | -0.444 | 0.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.481 | 0.000 | -0.481 | 0.000 |
| predicted_SLG | 0.419 | 0.000 | 0.200 | Hitting_SLG | 0.384 | 0.000 | -0.384 | 0.000 |
| predicted_SO | 1.108 | 2.000 | 2.000 | Hitting_SO | 1.087 | 3.000 | 0.913 | -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: 1.1080 -> 2.0000 (boost 0.8920, worse) |
| Biggest Deboost | predicted_AB: 3.3310 -> 2.0000 (deboost -1.3310, 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 | 10 | 9 | 1 | 8 | 2 | predicted_AB: 3.3310 -> 5.4161 (boost 2.0851, better) | predicted_AVG: 0.2350 -> 0.2271 (deboost -0.0079, 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.2271 -> 0.2116 (deboost -0.0155, 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.9107 -> 1.0000 (boost 0.0893, better) | predicted_BB: 0.4228 -> 0.0000 (deboost -0.4228, worse) | AB rounded to 5 (raw=5.42), rates preserved: AVG=0.212 HR/AB=0.057 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8154 -> 1.0000 (boost 0.1846, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4251 -> 0.2000 (deboost -0.2251, 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_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 2.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4251 (boost 0.2251, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691723",
"player_name": "Coby Mayo",
"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.134,
"predicted_3B": 0.0,
"predicted_AB": 3.331,
"predicted_AVG": 0.235,
"predicted_BB": 0.331,
"predicted_H": 0.72,
"predicted_HR": 0.15,
"predicted_OBP": 0.278,
"predicted_R": 0.446,
"predicted_RBI": 0.51,
"predicted_SLG": 0.419,
"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.2338,
"predicted_3B": 0.0009,
"predicted_AB": 5.4161,
"predicted_AVG": 0.2271,
"predicted_BB": 0.4251,
"predicted_H": 1.1732,
"predicted_HBP": 0.086,
"predicted_HR": 0.3138,
"predicted_OBP": 0.2748,
"predicted_R": 0.8491,
"predicted_RBI": 0.9484,
"predicted_SLG": 0.4353,
"predicted_SO": 1.9046
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.134,
"after": 0.2338,
"delta": 0.0998,
"percent_delta": 0.7448,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.331,
"after": 5.4161,
"delta": 2.0851,
"percent_delta": 0.626,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2271,
"delta": -0.0079,
"percent_delta": -0.0336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.331,
"after": 0.4251,
"delta": 0.0941,
"percent_delta": 0.2843,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 1.1732,
"delta": 0.4532,
"percent_delta": 0.6294,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.3138,
"delta": 0.1638,
"percent_delta": 1.092,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2748,
"delta": -0.0032,
"percent_delta": -0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.446,
"after": 0.8491,
"delta": 0.4031,
"percent_delta": 0.9038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.9484,
"delta": 0.4384,
"percent_delta": 0.8596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.419,
"after": 0.4353,
"delta": 0.0163,
"percent_delta": 0.0389,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.108,
"after": 1.9046,
"delta": 0.7966,
"percent_delta": 0.719,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 9,
"deboosted_metrics": 1,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.331,
"after": 5.4161,
"delta": 2.0851,
"percent_delta": 0.626,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2271,
"delta": -0.0079,
"percent_delta": -0.0336,
"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": 9,
"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.2338,
"predicted_3B": 0.0009,
"predicted_AB": 5.4161,
"predicted_AVG": 0.2116,
"predicted_BB": 0.4228,
"predicted_H": 1.146,
"predicted_HBP": 0.086,
"predicted_HR": 0.307,
"predicted_OBP": 0.2687,
"predicted_R": 0.8154,
"predicted_RBI": 0.9107,
"predicted_SLG": 0.4251,
"predicted_SO": 1.9147
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2338,
"after": 0.2338,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.4161,
"after": 5.4161,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2271,
"after": 0.2116,
"delta": -0.0155,
"percent_delta": -0.0683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4251,
"after": 0.4228,
"delta": -0.0023,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1732,
"after": 1.146,
"delta": -0.0272,
"percent_delta": -0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.086,
"after": 0.086,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3138,
"after": 0.307,
"delta": -0.0068,
"percent_delta": -0.0217,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2748,
"after": 0.2687,
"delta": -0.0061,
"percent_delta": -0.0222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8491,
"after": 0.8154,
"delta": -0.0337,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9484,
"after": 0.9107,
"delta": -0.0377,
"percent_delta": -0.0398,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4353,
"after": 0.4251,
"delta": -0.0102,
"percent_delta": -0.0234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9046,
"after": 1.9147,
"delta": 0.0101,
"percent_delta": 0.0053,
"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.2271,
"after": 0.2116,
"delta": -0.0155,
"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 5 (raw=5.42), rates preserved: AVG=0.212 HR/AB=0.057",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2338,
"after": 0.0,
"delta": -0.2338,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.4161,
"after": 5.0,
"delta": -0.4161,
"percent_delta": -0.0768,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4228,
"after": 0.0,
"delta": -0.4228,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.146,
"after": 1.0,
"delta": -0.146,
"percent_delta": -0.1274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.086,
"after": 0.0,
"delta": -0.086,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.307,
"after": 0.0,
"delta": -0.307,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9107,
"after": 1.0,
"delta": 0.0893,
"percent_delta": 0.0981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9147,
"after": 2.0,
"delta": 0.0853,
"percent_delta": 0.0446,
"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.9107,
"after": 1.0,
"delta": 0.0893,
"percent_delta": 0.0981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4228,
"after": 0.0,
"delta": -0.4228,
"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": 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_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8154,
"after": 1.0,
"delta": 0.1846,
"percent_delta": 0.2264,
"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": 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_R",
"before": 0.8154,
"after": 1.0,
"delta": 0.1846,
"percent_delta": 0.2264,
"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": 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.2116,
"after": 0.2,
"delta": -0.0116,
"percent_delta": -0.0548,
"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.2687,
"after": 0.2,
"delta": -0.0687,
"percent_delta": -0.2557,
"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.4251,
"after": 0.2,
"delta": -0.2251,
"percent_delta": -0.5295,
"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_SLG",
"before": 0.4251,
"after": 0.2,
"delta": -0.2251,
"percent_delta": -0.5295,
"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": 5.0,
"after": 2.0,
"delta": -3.0,
"percent_delta": -0.6,
"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": 2.0,
"after": 2.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": 5.0,
"after": 2.0,
"delta": -3.0,
"percent_delta": -0.6,
"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.2116,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2687,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4251,
"predicted_SO": 2.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": 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.2,
"after": 0.2116,
"delta": 0.0116,
"percent_delta": 0.0579,
"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.2687,
"delta": 0.0687,
"percent_delta": 0.3434,
"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.4251,
"delta": 0.2251,
"percent_delta": 1.1257,
"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.4251,
"delta": 0.2251,
"percent_delta": 1.1257,
"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.134,
"after": 0.0,
"delta": -0.134,
"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.331,
"after": 2.0,
"delta": -1.331,
"percent_delta": -0.3996,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2116,
"delta": -0.0234,
"percent_delta": -0.0996,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.331,
"after": 1.0,
"delta": 0.669,
"percent_delta": 2.0211,
"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.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2687,
"delta": -0.0093,
"percent_delta": -0.0335,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.446,
"after": 0.0,
"delta": -0.446,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.419,
"after": 0.4251,
"delta": 0.0061,
"percent_delta": 0.0146,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.108,
"after": 2.0,
"delta": 0.892,
"percent_delta": 0.8051,
"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.108,
"after": 2.0,
"delta": 0.892,
"percent_delta": 0.8051,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.331,
"after": 2.0,
"delta": -1.331,
"percent_delta": -0.3996,
"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.134 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.331 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.331 | - |
| predicted_H | 0.720 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.278 | - |
| predicted_R | 0.446 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.419 | - |
| 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.234 | 0.100 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.416 | 2.085 |
| predicted_AVG | 0.227 | -0.008 |
| predicted_BB | 0.425 | 0.094 |
| predicted_H | 1.173 | 0.453 |
| predicted_HBP | 0.086 | - |
| predicted_HR | 0.314 | 0.164 |
| predicted_OBP | 0.275 | -0.003 |
| predicted_R | 0.849 | 0.403 |
| predicted_RBI | 0.948 | 0.438 |
| predicted_SLG | 0.435 | 0.016 |
| predicted_SO | 1.905 | 0.797 |
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.234 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.416 | 0.000 |
| predicted_AVG | 0.212 | -0.015 |
| predicted_BB | 0.423 | -0.002 |
| predicted_H | 1.146 | -0.027 |
| predicted_HBP | 0.086 | 0.000 |
| predicted_HR | 0.307 | -0.007 |
| predicted_OBP | 0.269 | -0.006 |
| predicted_R | 0.815 | -0.034 |
| predicted_RBI | 0.911 | -0.038 |
| predicted_SLG | 0.425 | -0.010 |
| predicted_SO | 1.915 | 0.010 |
AB rounded to 5 (raw=5.42), rates preserved: AVG=0.212 HR/AB=0.057
| 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 | 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 | 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 | 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.234 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.416 |
| predicted_AVG | 0.200 | -0.012 |
| predicted_BB | 0.000 | -0.423 |
| predicted_H | 1.000 | -0.146 |
| predicted_HR | 0.000 | -0.307 |
| predicted_OBP | 0.200 | -0.069 |
| predicted_R | 1.000 | 0.185 |
| predicted_RBI | 1.000 | 0.089 |
| predicted_SLG | 0.200 | -0.225 |
| predicted_SO | 2.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 | 2.000 | -3.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 | 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 | 2.000 | 6.000 | 4.000 | 0.000 | 10.000 | 0.1905 | 0.1905 | 0.5238 | 0.1905 | 0.0952 | 0.2857 | 0.0000 | 0.4762 |
| last_10 | 0.20 | 9 | - | 35.000 | 9.000 | 2.000 | 0.000 | 4.000 | 8.000 | 10.000 | 1.000 | 13.000 | 0.2571 | 0.2973 | 0.6571 | 0.2571 | 0.1143 | 0.2286 | 0.0286 | 0.3714 |
| season | 0.60 | 48 | - | 523.000 | 111.000 | 21.000 | 0.000 | 23.000 | 77.000 | 70.000 | 52.000 | 174.000 | 0.2122 | 0.2867 | 0.3843 | 0.2122 | 0.0440 | 0.1472 | 0.0994 | 0.3327 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3630 |
| predicted_3B | 0.0020 |
| predicted_AB | 8.1160 |
| predicted_AVG | 0.2169 |
| predicted_BB | 0.5470 |
| predicted_H | 1.7600 |
| predicted_HBP | 0.0860 |
| predicted_HR | 0.5260 |
| predicted_OBP | 0.2706 |
| predicted_R | 1.3710 |
| predicted_RBI | 1.5160 |
| predicted_SLG | 0.4564 |
| predicted_SO | 2.9360 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1340 | 0.3630 | 0.2338 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.3310 | 8.1160 | 5.4161 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2169 | 0.2271 | model_form_blend |
| predicted_BB | 0.3310 | 0.5470 | 0.4251 | model_form_blend |
| predicted_H | 0.7200 | 1.7600 | 1.1732 | model_form_blend |
| predicted_HBP | - | 0.0860 | 0.0860 | form_only |
| predicted_HR | 0.1500 | 0.5260 | 0.3138 | model_form_blend |
| predicted_OBP | 0.2780 | 0.2706 | 0.2748 | model_form_blend |
| predicted_R | 0.4460 | 1.3710 | 0.8491 | model_form_blend |
| predicted_RBI | 0.5100 | 1.5160 | 0.9484 | model_form_blend |
| predicted_SLG | 0.4190 | 0.4564 | 0.4353 | model_form_blend |
| predicted_SO | 1.1080 | 2.9360 | 1.9046 | 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 | 160 |
| Season rows before report date | 160 |
| Report year | 2026 |
| Profile rows used | 157 |
| 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.212 |
| 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 | 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 | 20260606_BAL@TOR |
| game_type | full |
| mlbID | 691723 |
| playerID | 691723 |
| playerName | Coby Mayo |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-06 |
| sl_k_percent | 31.5 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.286 |
| sl_xwoba | 0.294 |
| sl_xba | 0.218 |
| sl_xslg | 0.383 |
| sl_sweet_spot_percent | 27.1 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 48.6 |
| sl_exit_velocity_avg | 91.7 |
| sl_launch_angle_avg | 19.5 |
| sl_whiff_percent | 29.7 |
| 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.029 | 0.000 | 0.000 | Hitting_2B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.029 | 1.000 | -0.029 | -1.000 |
| predicted_AB | 3.206 | 4.000 | 4.000 | Hitting_AB | 3.206 | 3.000 | 0.794 | 1.000 |
| predicted_AVG | 0.244 | 0.250 | 0.250 | Hitting_AVG | 0.220 | 0.333 | 0.030 | -0.083 |
| predicted_BB | 0.441 | 0.000 | 1.000 | Hitting_BB | 0.441 | 1.000 | -0.441 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.740 | 1.000 | 1.000 | Hitting_H | 0.706 | 1.000 | 0.294 | 0.000 |
| predicted_HR | 0.100 | 1.000 | 0.000 | Hitting_HR | 0.147 | 0.000 | 0.853 | 1.000 |
| predicted_OBP | 0.316 | 0.250 | 0.400 | Hitting_OBP | 0.300 | 0.500 | -0.050 | -0.250 |
| predicted_R | 0.471 | 1.000 | 1.000 | Hitting_R | 0.471 | 1.000 | 0.529 | 0.000 |
| predicted_RBI | 0.350 | 1.000 | 0.000 | Hitting_RBI | 0.559 | 0.000 | 0.441 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.118 | 0.000 | -0.118 | 0.000 |
| predicted_SLG | 0.400 | 1.000 | 0.250 | Hitting_SLG | 0.385 | 1.000 | 0.615 | 0.000 |
| predicted_SO | 1.029 | 2.000 | 1.000 | Hitting_SO | 1.029 | 1.000 | 0.971 | 1.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_SO: 1.0290 -> 2.0000 (boost 0.9710, worse) |
| Biggest Deboost | predicted_BB: 0.4410 -> 0.0000 (deboost -0.4410, 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 | 5 | 2 | predicted_AB: 3.2060 -> 4.0090 (boost 0.8030, better) | predicted_AVG: 0.2440 -> 0.2354 (deboost -0.0086, 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.3966 -> 0.3646 (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 | 2 | 5 | 3 | 4 | predicted_BB: 0.5452 -> 1.0000 (boost 0.4548, better) | predicted_RBI: 0.4439 -> 0.0000 (deboost -0.4439, worse) | AB rounded to 4 (raw=4.01), rates preserved: AVG=0.221 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5513 -> 1.0000 (boost 0.4487, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3144 -> 0.4000 (boost 0.0856, better) | predicted_SLG: 0.3646 -> 0.2500 (deboost -0.1146, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 2 | 2 | predicted_HR: 0.0000 -> 1.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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3646 (boost 0.1146, better) | predicted_OBP: 0.4000 -> 0.3144 (deboost -0.0856, 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.029,
"predicted_3B": 0.029,
"predicted_AB": 3.206,
"predicted_AVG": 0.244,
"predicted_BB": 0.441,
"predicted_H": 0.74,
"predicted_HR": 0.1,
"predicted_OBP": 0.316,
"predicted_R": 0.471,
"predicted_RBI": 0.35,
"predicted_SLG": 0.4,
"predicted_SO": 1.029
},
"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.0764,
"predicted_3B": 0.0586,
"predicted_AB": 4.009,
"predicted_AVG": 0.2354,
"predicted_BB": 0.5481,
"predicted_H": 0.9075,
"predicted_HBP": 0.009,
"predicted_HR": 0.13,
"predicted_OBP": 0.3135,
"predicted_R": 0.5741,
"predicted_RBI": 0.4622,
"predicted_SLG": 0.3966,
"predicted_SO": 1.2677
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.029,
"after": 0.0764,
"delta": 0.0474,
"percent_delta": 1.6345,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0586,
"delta": 0.0296,
"percent_delta": 1.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.206,
"after": 4.009,
"delta": 0.803,
"percent_delta": 0.2505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2354,
"delta": -0.0086,
"percent_delta": -0.0352,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.441,
"after": 0.5481,
"delta": 0.1071,
"percent_delta": 0.2429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 0.9075,
"delta": 0.1675,
"percent_delta": 0.2264,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.13,
"delta": 0.03,
"percent_delta": 0.3,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.3135,
"delta": -0.0025,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.471,
"after": 0.5741,
"delta": 0.1031,
"percent_delta": 0.2189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.4622,
"delta": 0.1122,
"percent_delta": 0.3206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4,
"after": 0.3966,
"delta": -0.0034,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.029,
"after": 1.2677,
"delta": 0.2387,
"percent_delta": 0.232,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.206,
"after": 4.009,
"delta": 0.803,
"percent_delta": 0.2505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2354,
"delta": -0.0086,
"percent_delta": -0.0352,
"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": 9,
"season": 16
}
},
{
"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.0764,
"predicted_3B": 0.0586,
"predicted_AB": 4.009,
"predicted_AVG": 0.2211,
"predicted_BB": 0.5452,
"predicted_H": 0.8864,
"predicted_HBP": 0.009,
"predicted_HR": 0.1272,
"predicted_OBP": 0.3144,
"predicted_R": 0.5513,
"predicted_RBI": 0.4439,
"predicted_SLG": 0.3646,
"predicted_SO": 1.2744
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0764,
"after": 0.0764,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0586,
"after": 0.0586,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.009,
"after": 4.009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2354,
"after": 0.2211,
"delta": -0.0143,
"percent_delta": -0.0607,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5481,
"after": 0.5452,
"delta": -0.0029,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9075,
"after": 0.8864,
"delta": -0.0211,
"percent_delta": -0.0233,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.009,
"after": 0.009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1272,
"delta": -0.0028,
"percent_delta": -0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3135,
"after": 0.3144,
"delta": 0.0009,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5741,
"after": 0.5513,
"delta": -0.0228,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4622,
"after": 0.4439,
"delta": -0.0183,
"percent_delta": -0.0396,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3966,
"after": 0.3646,
"delta": -0.032,
"percent_delta": -0.0807,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2677,
"after": 1.2744,
"delta": 0.0067,
"percent_delta": 0.0053,
"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.3646,
"delta": -0.032,
"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.01), rates preserved: AVG=0.221 HR/AB=0.032",
"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.0764,
"after": 0.0,
"delta": -0.0764,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0586,
"after": 0.0,
"delta": -0.0586,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.009,
"after": 4.0,
"delta": -0.009,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5452,
"after": 1.0,
"delta": 0.4548,
"percent_delta": 0.8342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8864,
"after": 1.0,
"delta": 0.1136,
"percent_delta": 0.1282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1272,
"after": 0.0,
"delta": -0.1272,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4439,
"after": 0.0,
"delta": -0.4439,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2744,
"after": 1.0,
"delta": -0.2744,
"percent_delta": -0.2153,
"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_BB",
"before": 0.5452,
"after": 1.0,
"delta": 0.4548,
"percent_delta": 0.8342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4439,
"after": 0.0,
"delta": -0.4439,
"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.5513,
"after": 1.0,
"delta": 0.4487,
"percent_delta": 0.8139,
"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.5513,
"after": 1.0,
"delta": 0.4487,
"percent_delta": 0.8139,
"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.2211,
"after": 0.25,
"delta": 0.0289,
"percent_delta": 0.1307,
"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.3144,
"after": 0.4,
"delta": 0.0856,
"percent_delta": 0.2723,
"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.3646,
"after": 0.25,
"delta": -0.1146,
"percent_delta": -0.3143,
"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.3144,
"after": 0.4,
"delta": 0.0856,
"percent_delta": 0.2723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3646,
"after": 0.25,
"delta": -0.1146,
"percent_delta": -0.3143,
"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": 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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"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": 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": 3,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 2,
"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_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.2211,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3144,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3646,
"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.2211,
"delta": -0.0289,
"percent_delta": -0.1155,
"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.4,
"after": 0.3144,
"delta": -0.0856,
"percent_delta": -0.2141,
"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.3646,
"delta": 0.1146,
"percent_delta": 0.4583,
"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.3646,
"delta": 0.1146,
"percent_delta": 0.4583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3144,
"delta": -0.0856,
"percent_delta": -0.2141,
"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.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.206,
"after": 4.0,
"delta": 0.794,
"percent_delta": 0.2477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2211,
"delta": -0.0229,
"percent_delta": -0.0939,
"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.74,
"after": 1.0,
"delta": 0.26,
"percent_delta": 0.3514,
"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.316,
"after": 0.3144,
"delta": -0.0016,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.471,
"after": 1.0,
"delta": 0.529,
"percent_delta": 1.1231,
"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.4,
"after": 0.3646,
"delta": -0.0354,
"percent_delta": -0.0885,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.029,
"after": 2.0,
"delta": 0.971,
"percent_delta": 0.9436,
"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_SO",
"before": 1.029,
"after": 2.0,
"delta": 0.971,
"percent_delta": 0.9436,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.441,
"after": 0.0,
"delta": -0.441,
"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.029 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.206 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.441 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.316 | - |
| predicted_R | 0.471 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.400 | - |
| predicted_SO | 1.029 | - |
Final model 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.076 | 0.047 |
| predicted_3B | 0.059 | 0.030 |
| predicted_AB | 4.009 | 0.803 |
| predicted_AVG | 0.235 | -0.009 |
| predicted_BB | 0.548 | 0.107 |
| predicted_H | 0.907 | 0.167 |
| predicted_HBP | 0.009 | - |
| predicted_HR | 0.130 | 0.030 |
| predicted_OBP | 0.314 | -0.003 |
| predicted_R | 0.574 | 0.103 |
| predicted_RBI | 0.462 | 0.112 |
| predicted_SLG | 0.397 | -0.003 |
| predicted_SO | 1.268 | 0.239 |
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.076 | 0.000 |
| predicted_3B | 0.059 | 0.000 |
| predicted_AB | 4.009 | 0.000 |
| predicted_AVG | 0.221 | -0.014 |
| predicted_BB | 0.545 | -0.003 |
| predicted_H | 0.886 | -0.021 |
| predicted_HBP | 0.009 | 0.000 |
| predicted_HR | 0.127 | -0.003 |
| predicted_OBP | 0.314 | 0.001 |
| predicted_R | 0.551 | -0.023 |
| predicted_RBI | 0.444 | -0.018 |
| predicted_SLG | 0.365 | -0.032 |
| predicted_SO | 1.274 | 0.007 |
AB rounded to 4 (raw=4.01), rates preserved: AVG=0.221 HR/AB=0.032
| 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.076 |
| predicted_3B | 0.000 | -0.059 |
| predicted_AB | 4.000 | -0.009 |
| predicted_AVG | 0.250 | 0.029 |
| predicted_BB | 1.000 | 0.455 |
| predicted_H | 1.000 | 0.114 |
| predicted_HR | 0.000 | -0.127 |
| predicted_OBP | 0.400 | 0.086 |
| predicted_R | 1.000 | 0.449 |
| predicted_RBI | 0.000 | -0.444 |
| predicted_SLG | 0.250 | -0.115 |
| 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 | 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 | 1.000 | 1.000 |
| PA | 4.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 | - | 16.000 | 3.000 | 1.000 | 1.000 | 0.000 | 0.000 | 2.000 | 3.000 | 6.000 | 0.1875 | 0.3158 | 0.3750 | 0.1875 | 0.0000 | 0.0000 | 0.1875 | 0.3750 |
| last_10 | 0.20 | 9 | - | 34.000 | 8.000 | 1.000 | 1.000 | 1.000 | 2.000 | 5.000 | 5.000 | 11.000 | 0.2353 | 0.3333 | 0.4118 | 0.2353 | 0.0294 | 0.0588 | 0.1471 | 0.3235 |
| season | 0.60 | 16 | - | 109.000 | 24.000 | 1.000 | 1.000 | 5.000 | 19.000 | 16.000 | 15.000 | 35.000 | 0.2202 | 0.3000 | 0.3853 | 0.2202 | 0.0459 | 0.1743 | 0.1376 | 0.3211 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1490 |
| predicted_3B | 0.1040 |
| predicted_AB | 5.2380 |
| predicted_AVG | 0.2223 |
| predicted_BB | 0.7120 |
| predicted_H | 1.1640 |
| predicted_HBP | 0.0090 |
| predicted_HR | 0.1760 |
| predicted_OBP | 0.3097 |
| predicted_R | 0.7320 |
| predicted_RBI | 0.6340 |
| predicted_SLG | 0.3915 |
| predicted_SO | 1.6330 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0290 | 0.1490 | 0.0764 | model_form_blend |
| predicted_3B | 0.0290 | 0.1040 | 0.0586 | model_form_blend |
| predicted_AB | 3.2060 | 5.2380 | 4.0090 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2223 | 0.2354 | model_form_blend |
| predicted_BB | 0.4410 | 0.7120 | 0.5481 | model_form_blend |
| predicted_H | 0.7400 | 1.1640 | 0.9075 | model_form_blend |
| predicted_HBP | - | 0.0090 | 0.0090 | form_only |
| predicted_HR | 0.1000 | 0.1760 | 0.1300 | model_form_blend |
| predicted_OBP | 0.3160 | 0.3097 | 0.3135 | model_form_blend |
| predicted_R | 0.4710 | 0.7320 | 0.5741 | model_form_blend |
| predicted_RBI | 0.3500 | 0.6340 | 0.4622 | model_form_blend |
| predicted_SLG | 0.4000 | 0.3915 | 0.3966 | model_form_blend |
| predicted_SO | 1.0290 | 1.6330 | 1.2677 | 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 | 34 |
| Season rows before report date | 34 |
| 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 | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.22 |
| 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 | 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 | 1 |
| 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 | 2B |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 702616 |
| playerID | 702616 |
| playerName | Jackson Holliday |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 27.6 |
| sl_bb_percent | 13.8 |
| sl_woba | 0.326 |
| sl_xwoba | 0.338 |
| sl_xba | 0.235 |
| sl_xslg | 0.407 |
| sl_sweet_spot_percent | 44.1 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 41.2 |
| sl_exit_velocity_avg | 89.3 |
| sl_launch_angle_avg | 16.8 |
| sl_whiff_percent | 31.1 |
| sl_swing_percent | 42.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.140 | 0.000 | 0.000 | Hitting_2B | 0.131 | 2.000 | -0.131 | -2.000 |
| predicted_3B | 0.007 | 0.000 | 0.000 | Hitting_3B | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_AB | 3.301 | 2.000 | 5.000 | Hitting_AB | 3.097 | 4.000 | -1.097 | -2.000 |
| predicted_AVG | 0.297 | 0.000 | 0.200 | Hitting_AVG | 0.276 | 0.500 | -0.276 | -0.500 |
| predicted_BB | 0.221 | 1.000 | 0.000 | Hitting_BB | 0.207 | 0.000 | 0.793 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.048 | 0.000 | -0.048 | 0.000 |
| predicted_H | 0.690 | 0.000 | 1.000 | Hitting_H | 0.855 | 2.000 | -0.855 | -2.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_OBP | 0.350 | 0.333 | 0.200 | Hitting_OBP | 0.328 | 0.500 | 0.005 | -0.167 |
| predicted_R | 0.441 | 0.000 | 1.000 | Hitting_R | 0.414 | 1.000 | -0.414 | -1.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.393 | 1.000 | -0.393 | -1.000 |
| predicted_SLG | 0.464 | 0.000 | 0.200 | Hitting_SLG | 0.356 | 1.000 | -0.356 | -1.000 |
| predicted_SO | 0.971 | 1.000 | 1.000 | Hitting_SO | 0.910 | 1.000 | 0.090 | 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 | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.2210 -> 1.0000 (boost 0.7790, better) |
| Biggest Deboost | predicted_AB: 3.3010 -> 2.0000 (deboost -1.3010, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.3010 -> 5.1415 (boost 1.8405, 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.4772 -> 0.4290 (deboost -0.0482, 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_RBI: 0.7405 -> 1.0000 (boost 0.2595, better) | predicted_H: 1.3942 -> 1.0000 (deboost -0.3942, worse) | AB rounded to 5 (raw=5.14), rates preserved: AVG=0.271 HR/AB=0.029 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7033 -> 1.0000 (boost 0.2967, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4290 -> 0.2000 (deboost -0.2290, 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_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 2.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4290 (boost 0.2290, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677942",
"player_name": "Blaze Alexander",
"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.14,
"predicted_3B": 0.007,
"predicted_AB": 3.301,
"predicted_AVG": 0.297,
"predicted_BB": 0.221,
"predicted_H": 0.69,
"predicted_HR": 0.09,
"predicted_OBP": 0.35,
"predicted_R": 0.441,
"predicted_RBI": 0.41,
"predicted_SLG": 0.464,
"predicted_SO": 0.971
},
"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.3461,
"predicted_3B": 0.0092,
"predicted_AB": 5.1415,
"predicted_AVG": 0.3056,
"predicted_BB": 0.3911,
"predicted_H": 1.4273,
"predicted_HBP": 0.056,
"predicted_HR": 0.1523,
"predicted_OBP": 0.3562,
"predicted_R": 0.7324,
"predicted_RBI": 0.7711,
"predicted_SLG": 0.4772,
"predicted_SO": 1.3555
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.14,
"after": 0.3461,
"delta": 0.2061,
"percent_delta": 1.4721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.007,
"after": 0.0092,
"delta": 0.0022,
"percent_delta": 0.3143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.301,
"after": 5.1415,
"delta": 1.8405,
"percent_delta": 0.5576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.297,
"after": 0.3056,
"delta": 0.0086,
"percent_delta": 0.029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.221,
"after": 0.3911,
"delta": 0.1701,
"percent_delta": 0.7697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.4273,
"delta": 0.7373,
"percent_delta": 1.0686,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1523,
"delta": 0.0623,
"percent_delta": 0.6922,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3562,
"delta": 0.0062,
"percent_delta": 0.0177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.441,
"after": 0.7324,
"delta": 0.2914,
"percent_delta": 0.6608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.7711,
"delta": 0.3611,
"percent_delta": 0.8807,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.464,
"after": 0.4772,
"delta": 0.0132,
"percent_delta": 0.0284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.971,
"after": 1.3555,
"delta": 0.3845,
"percent_delta": 0.396,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.301,
"after": 5.1415,
"delta": 1.8405,
"percent_delta": 0.5576,
"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": 8,
"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.3461,
"predicted_3B": 0.0092,
"predicted_AB": 5.1415,
"predicted_AVG": 0.2712,
"predicted_BB": 0.389,
"predicted_H": 1.3942,
"predicted_HBP": 0.056,
"predicted_HR": 0.149,
"predicted_OBP": 0.3224,
"predicted_R": 0.7033,
"predicted_RBI": 0.7405,
"predicted_SLG": 0.429,
"predicted_SO": 1.3627
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3461,
"after": 0.3461,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0092,
"after": 0.0092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.1415,
"after": 5.1415,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3056,
"after": 0.2712,
"delta": -0.0344,
"percent_delta": -0.1126,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3911,
"after": 0.389,
"delta": -0.0021,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4273,
"after": 1.3942,
"delta": -0.0331,
"percent_delta": -0.0232,
"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.1523,
"after": 0.149,
"delta": -0.0033,
"percent_delta": -0.0217,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3562,
"after": 0.3224,
"delta": -0.0338,
"percent_delta": -0.0949,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7324,
"after": 0.7033,
"delta": -0.0291,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7711,
"after": 0.7405,
"delta": -0.0306,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4772,
"after": 0.429,
"delta": -0.0482,
"percent_delta": -0.101,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3555,
"after": 1.3627,
"delta": 0.0072,
"percent_delta": 0.0053,
"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.4772,
"after": 0.429,
"delta": -0.0482,
"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 5 (raw=5.14), rates preserved: AVG=0.271 HR/AB=0.029",
"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.3461,
"after": 0.0,
"delta": -0.3461,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0092,
"after": 0.0,
"delta": -0.0092,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.1415,
"after": 5.0,
"delta": -0.1415,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"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": 1.3942,
"after": 1.0,
"delta": -0.3942,
"percent_delta": -0.2827,
"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.149,
"after": 0.0,
"delta": -0.149,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7405,
"after": 1.0,
"delta": 0.2595,
"percent_delta": 0.3504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3627,
"after": 1.0,
"delta": -0.3627,
"percent_delta": -0.2662,
"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_RBI",
"before": 0.7405,
"after": 1.0,
"delta": 0.2595,
"percent_delta": 0.3504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3942,
"after": 1.0,
"delta": -0.3942,
"percent_delta": -0.2827,
"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.7033,
"after": 1.0,
"delta": 0.2967,
"percent_delta": 0.4219,
"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.7033,
"after": 1.0,
"delta": 0.2967,
"percent_delta": 0.4219,
"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.2712,
"after": 0.2,
"delta": -0.0712,
"percent_delta": -0.2625,
"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.3224,
"after": 0.2,
"delta": -0.1224,
"percent_delta": -0.3797,
"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.429,
"after": 0.2,
"delta": -0.229,
"percent_delta": -0.5338,
"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.429,
"after": 0.2,
"delta": -0.229,
"percent_delta": -0.5338,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 2.0,
"delta": -3.0,
"percent_delta": -0.6,
"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": 5.0,
"after": 2.0,
"delta": -3.0,
"percent_delta": -0.6,
"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.2712,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3224,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.429,
"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": 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.2,
"after": 0.2712,
"delta": 0.0712,
"percent_delta": 0.3558,
"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.3224,
"delta": 0.1224,
"percent_delta": 0.6122,
"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.429,
"delta": 0.229,
"percent_delta": 1.145,
"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.429,
"delta": 0.229,
"percent_delta": 1.145,
"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.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.007,
"after": 0.0,
"delta": -0.007,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.301,
"after": 2.0,
"delta": -1.301,
"percent_delta": -0.3941,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.297,
"after": 0.2712,
"delta": -0.0258,
"percent_delta": -0.0869,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.221,
"after": 1.0,
"delta": 0.779,
"percent_delta": 3.5249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"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.35,
"after": 0.3224,
"delta": -0.0276,
"percent_delta": -0.0789,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.441,
"after": 0.0,
"delta": -0.441,
"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.464,
"after": 0.429,
"delta": -0.035,
"percent_delta": -0.0754,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.971,
"after": 1.0,
"delta": 0.029,
"percent_delta": 0.0299,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.221,
"after": 1.0,
"delta": 0.779,
"percent_delta": 3.5249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.301,
"after": 2.0,
"delta": -1.301,
"percent_delta": -0.3941,
"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.007 | - |
| predicted_AB | 3.301 | - |
| predicted_AVG | 0.297 | - |
| predicted_BB | 0.221 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.350 | - |
| predicted_R | 0.441 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.464 | - |
| predicted_SO | 0.971 | - |
Final model 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.346 | 0.206 |
| predicted_3B | 0.009 | 0.002 |
| predicted_AB | 5.141 | 1.840 |
| predicted_AVG | 0.306 | 0.009 |
| predicted_BB | 0.391 | 0.170 |
| predicted_H | 1.427 | 0.737 |
| predicted_HBP | 0.056 | - |
| predicted_HR | 0.152 | 0.062 |
| predicted_OBP | 0.356 | 0.006 |
| predicted_R | 0.732 | 0.291 |
| predicted_RBI | 0.771 | 0.361 |
| predicted_SLG | 0.477 | 0.013 |
| predicted_SO | 1.355 | 0.384 |
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.346 | 0.000 |
| predicted_3B | 0.009 | 0.000 |
| predicted_AB | 5.141 | 0.000 |
| predicted_AVG | 0.271 | -0.034 |
| predicted_BB | 0.389 | -0.002 |
| predicted_H | 1.394 | -0.033 |
| predicted_HBP | 0.056 | 0.000 |
| predicted_HR | 0.149 | -0.003 |
| predicted_OBP | 0.322 | -0.034 |
| predicted_R | 0.703 | -0.029 |
| predicted_RBI | 0.741 | -0.031 |
| predicted_SLG | 0.429 | -0.048 |
| predicted_SO | 1.363 | 0.007 |
AB rounded to 5 (raw=5.14), rates preserved: AVG=0.271 HR/AB=0.029
| 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.346 |
| predicted_3B | 0.000 | -0.009 |
| predicted_AB | 5.000 | -0.141 |
| predicted_AVG | 0.200 | -0.071 |
| predicted_BB | 0.000 | -0.389 |
| predicted_H | 1.000 | -0.394 |
| predicted_HR | 0.000 | -0.149 |
| predicted_OBP | 0.200 | -0.122 |
| predicted_R | 1.000 | 0.297 |
| predicted_RBI | 1.000 | 0.259 |
| predicted_SLG | 0.200 | -0.229 |
| predicted_SO | 1.000 | -0.363 |
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 | -3.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 | 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 | 2.000 | 0.000 | 1.000 | 3.000 | 3.000 | 2.000 | 2.000 | 0.4000 | 0.4444 | 0.7333 | 0.4000 | 0.0667 | 0.2000 | 0.1333 | 0.1333 |
| last_10 | 0.20 | 8 | - | 29.000 | 12.000 | 6.000 | 0.000 | 2.000 | 9.000 | 4.000 | 2.000 | 6.000 | 0.4138 | 0.4375 | 0.8276 | 0.4138 | 0.0690 | 0.3103 | 0.0690 | 0.2069 |
| season | 0.60 | 44 | - | 449.000 | 124.000 | 19.000 | 1.000 | 5.000 | 57.000 | 60.000 | 30.000 | 132.000 | 0.2762 | 0.3278 | 0.3563 | 0.2762 | 0.0111 | 0.1270 | 0.0668 | 0.2940 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6160 |
| predicted_3B | 0.0120 |
| predicted_AB | 7.5520 |
| predicted_AVG | 0.3169 |
| predicted_BB | 0.6140 |
| predicted_H | 2.3930 |
| predicted_HBP | 0.0560 |
| predicted_HR | 0.2340 |
| predicted_OBP | 0.3643 |
| predicted_R | 1.1140 |
| predicted_RBI | 1.2440 |
| predicted_SLG | 0.4944 |
| predicted_SO | 1.8590 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1400 | 0.6160 | 0.3461 | model_form_blend |
| predicted_3B | 0.0070 | 0.0120 | 0.0092 | model_form_blend |
| predicted_AB | 3.3010 | 7.5520 | 5.1415 | model_form_blend |
| predicted_AVG | 0.2970 | 0.3169 | 0.3056 | model_form_blend |
| predicted_BB | 0.2210 | 0.6140 | 0.3911 | model_form_blend |
| predicted_H | 0.6900 | 2.3930 | 1.4273 | model_form_blend |
| predicted_HBP | - | 0.0560 | 0.0560 | form_only |
| predicted_HR | 0.0900 | 0.2340 | 0.1523 | model_form_blend |
| predicted_OBP | 0.3500 | 0.3643 | 0.3562 | model_form_blend |
| predicted_R | 0.4410 | 1.1140 | 0.7324 | model_form_blend |
| predicted_RBI | 0.4100 | 1.2440 | 0.7711 | model_form_blend |
| predicted_SLG | 0.4640 | 0.4944 | 0.4772 | model_form_blend |
| predicted_SO | 0.9710 | 1.8590 | 1.3555 | 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 | 136 |
| 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 | 1 |
| 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 | 2 |
| 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 | 1 |
| Hitting_TB | 4 |
| 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 | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 677942 |
| playerID | 677942 |
| playerName | Blaze Alexander |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.0 |
| sl_bb_percent | 6.6 |
| sl_woba | 0.319 |
| sl_xwoba | 0.338 |
| sl_xba | 0.296 |
| sl_xslg | 0.431 |
| sl_sweet_spot_percent | 42.2 |
| sl_barrel_batted_rate | 4.9 |
| sl_hard_hit_percent | 46.1 |
| sl_exit_velocity_avg | 92.3 |
| sl_launch_angle_avg | 9.8 |
| sl_whiff_percent | 28.8 |
| sl_swing_percent | 56.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.444 | 0.000 | 0.000 | Hitting_2B | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.667 | 3.000 | 5.000 | Hitting_AB | 3.300 | 0.000 | -0.300 | 3.000 |
| predicted_AVG | 0.272 | 0.000 | 0.200 | Hitting_AVG | 0.242 | - | -0.242 | - |
| 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.550 | 0.000 | 1.000 | Hitting_H | 0.800 | 0.000 | -0.800 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.294 | 0.000 | 0.200 | Hitting_OBP | 0.242 | - | -0.242 | - |
| predicted_R | 0.444 | 0.000 | 1.000 | Hitting_R | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_RBI | 0.310 | 0.000 | 0.000 | Hitting_RBI | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_SLG | 0.381 | 0.000 | 0.200 | Hitting_SLG | 0.364 | - | -0.364 | - |
| predicted_SO | 1.889 | 2.000 | 2.000 | Hitting_SO | 1.700 | 0.000 | 0.300 | 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 | 0 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 1.8890 -> 2.0000 (boost 0.1110, worse) |
| Biggest Deboost | predicted_AB: 3.6670 -> 3.0000 (deboost -0.6670, 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 | 9 | 6 | 3 | 5 | 4 | predicted_AB: 3.6670 -> 4.6187 (boost 0.9517, better) | predicted_SLG: 0.3810 -> 0.3683 (deboost -0.0127, 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.2877 -> 0.2011 (deboost -0.0866, 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: 4.6187 -> 5.0000 (boost 0.3813, better) | predicted_2B: 0.3989 -> 0.0000 (deboost -0.3989, worse) | AB rounded to 5 (raw=4.62), rates preserved: AVG=0.188 HR/AB=0.019 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6242 -> 1.0000 (boost 0.3758, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.1879 -> 0.2000 (boost 0.0121, better) | predicted_SLG: 0.3325 -> 0.2000 (deboost -0.1325, 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_AB: 5.0000 -> 3.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.2000 -> 0.3325 (boost 0.1325, better) | predicted_AVG: 0.2000 -> 0.1879 (deboost -0.0121, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669087",
"player_name": "Sam Huff",
"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.444,
"predicted_3B": 0.0,
"predicted_AB": 3.667,
"predicted_AVG": 0.272,
"predicted_BB": 0.0,
"predicted_H": 0.55,
"predicted_HR": 0.08,
"predicted_OBP": 0.294,
"predicted_R": 0.444,
"predicted_RBI": 0.31,
"predicted_SLG": 0.381,
"predicted_SO": 1.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.3989,
"predicted_3B": 0.0037,
"predicted_AB": 4.6187,
"predicted_AVG": 0.2632,
"predicted_BB": 0.0767,
"predicted_H": 0.8887,
"predicted_HBP": 0.029,
"predicted_HR": 0.089,
"predicted_OBP": 0.2877,
"predicted_R": 0.65,
"predicted_RBI": 0.3886,
"predicted_SLG": 0.3683,
"predicted_SO": 2.2684
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.444,
"after": 0.3989,
"delta": -0.0451,
"percent_delta": -0.1016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0037,
"delta": 0.0037,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.667,
"after": 4.6187,
"delta": 0.9517,
"percent_delta": 0.2595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2632,
"delta": -0.0088,
"percent_delta": -0.0324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0767,
"delta": 0.0767,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.55,
"after": 0.8887,
"delta": 0.3387,
"percent_delta": 0.6158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.089,
"delta": 0.009,
"percent_delta": 0.1125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.294,
"after": 0.2877,
"delta": -0.0063,
"percent_delta": -0.0214,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.444,
"after": 0.65,
"delta": 0.206,
"percent_delta": 0.464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.31,
"after": 0.3886,
"delta": 0.0786,
"percent_delta": 0.2535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.381,
"after": 0.3683,
"delta": -0.0127,
"percent_delta": -0.0333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.889,
"after": 2.2684,
"delta": 0.3794,
"percent_delta": 0.2008,
"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_AB",
"before": 3.667,
"after": 4.6187,
"delta": 0.9517,
"percent_delta": 0.2595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.381,
"after": 0.3683,
"delta": -0.0127,
"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": 2,
"last_10": 3,
"season": 3
}
},
{
"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.3989,
"predicted_3B": 0.0037,
"predicted_AB": 4.6187,
"predicted_AVG": 0.1879,
"predicted_BB": 0.0763,
"predicted_H": 0.8681,
"predicted_HBP": 0.029,
"predicted_HR": 0.0871,
"predicted_OBP": 0.2011,
"predicted_R": 0.6242,
"predicted_RBI": 0.3732,
"predicted_SLG": 0.3325,
"predicted_SO": 2.2804
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3989,
"after": 0.3989,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0037,
"after": 0.0037,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6187,
"after": 4.6187,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2632,
"after": 0.1879,
"delta": -0.0753,
"percent_delta": -0.2861,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0767,
"after": 0.0763,
"delta": -0.0004,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8887,
"after": 0.8681,
"delta": -0.0206,
"percent_delta": -0.0232,
"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.089,
"after": 0.0871,
"delta": -0.0019,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2877,
"after": 0.2011,
"delta": -0.0866,
"percent_delta": -0.301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.65,
"after": 0.6242,
"delta": -0.0258,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3886,
"after": 0.3732,
"delta": -0.0154,
"percent_delta": -0.0396,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3683,
"after": 0.3325,
"delta": -0.0358,
"percent_delta": -0.0972,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.2684,
"after": 2.2804,
"delta": 0.012,
"percent_delta": 0.0053,
"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.2877,
"after": 0.2011,
"delta": -0.0866,
"percent_delta": -0.301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.62), rates preserved: AVG=0.188 HR/AB=0.019",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3989,
"after": 0.0,
"delta": -0.3989,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0037,
"after": 0.0,
"delta": -0.0037,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6187,
"after": 5.0,
"delta": 0.3813,
"percent_delta": 0.0826,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0763,
"after": 0.0,
"delta": -0.0763,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8681,
"after": 1.0,
"delta": 0.1319,
"percent_delta": 0.1519,
"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.0871,
"after": 0.0,
"delta": -0.0871,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3732,
"after": 0.0,
"delta": -0.3732,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.2804,
"after": 2.0,
"delta": -0.2804,
"percent_delta": -0.123,
"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": 4.6187,
"after": 5.0,
"delta": 0.3813,
"percent_delta": 0.0826,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3989,
"after": 0.0,
"delta": -0.3989,
"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": 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": 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.6242,
"after": 1.0,
"delta": 0.3758,
"percent_delta": 0.6021,
"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": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6242,
"after": 1.0,
"delta": 0.3758,
"percent_delta": 0.6021,
"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": 0.0,
"predicted_SLG": 0.2,
"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.1879,
"after": 0.2,
"delta": 0.0121,
"percent_delta": 0.0644,
"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.2011,
"after": 0.2,
"delta": -0.0011,
"percent_delta": -0.0055,
"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.3325,
"after": 0.2,
"delta": -0.1325,
"percent_delta": -0.3985,
"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": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1879,
"after": 0.2,
"delta": 0.0121,
"percent_delta": 0.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3325,
"after": 0.2,
"delta": -0.1325,
"percent_delta": -0.3985,
"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": 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": 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": 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_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": 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.1879,
"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.2011,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3325,
"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.2,
"after": 0.1879,
"delta": -0.0121,
"percent_delta": -0.0603,
"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.2,
"after": 0.2011,
"delta": 0.0011,
"percent_delta": 0.0057,
"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.2,
"after": 0.3325,
"delta": 0.1325,
"percent_delta": 0.6624,
"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.2,
"after": 0.3325,
"delta": 0.1325,
"percent_delta": 0.6624,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.1879,
"delta": -0.0121,
"percent_delta": -0.0603,
"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.444,
"after": 0.0,
"delta": -0.444,
"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.667,
"after": 3.0,
"delta": -0.667,
"percent_delta": -0.1819,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.1879,
"delta": -0.0841,
"percent_delta": -0.3092,
"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": 0.55,
"after": 0.0,
"delta": -0.55,
"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.294,
"after": 0.2011,
"delta": -0.0929,
"percent_delta": -0.316,
"direction": "deboost",
"projection_effect": "worse",
"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.31,
"after": 0.0,
"delta": -0.31,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.381,
"after": 0.3325,
"delta": -0.0485,
"percent_delta": -0.1273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.889,
"after": 2.0,
"delta": 0.111,
"percent_delta": 0.0588,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 0,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.889,
"after": 2.0,
"delta": 0.111,
"percent_delta": 0.0588,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.667,
"after": 3.0,
"delta": -0.667,
"percent_delta": -0.1819,
"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.444 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.667 | - |
| predicted_AVG | 0.272 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.550 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.294 | - |
| predicted_R | 0.444 | - |
| predicted_RBI | 0.310 | - |
| predicted_SLG | 0.381 | - |
| predicted_SO | 1.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.399 | -0.045 |
| predicted_3B | 0.004 | 0.004 |
| predicted_AB | 4.619 | 0.952 |
| predicted_AVG | 0.263 | -0.009 |
| predicted_BB | 0.077 | 0.077 |
| predicted_H | 0.889 | 0.339 |
| predicted_HBP | 0.029 | - |
| predicted_HR | 0.089 | 0.009 |
| predicted_OBP | 0.288 | -0.006 |
| predicted_R | 0.650 | 0.206 |
| predicted_RBI | 0.389 | 0.079 |
| predicted_SLG | 0.368 | -0.013 |
| predicted_SO | 2.268 | 0.379 |
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.399 | 0.000 |
| predicted_3B | 0.004 | 0.000 |
| predicted_AB | 4.619 | 0.000 |
| predicted_AVG | 0.188 | -0.075 |
| predicted_BB | 0.076 | -0.000 |
| predicted_H | 0.868 | -0.021 |
| predicted_HBP | 0.029 | 0.000 |
| predicted_HR | 0.087 | -0.002 |
| predicted_OBP | 0.201 | -0.087 |
| predicted_R | 0.624 | -0.026 |
| predicted_RBI | 0.373 | -0.015 |
| predicted_SLG | 0.333 | -0.036 |
| predicted_SO | 2.280 | 0.012 |
AB rounded to 5 (raw=4.62), rates preserved: AVG=0.188 HR/AB=0.019
| 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 | 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 | 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 | 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.399 |
| predicted_3B | 0.000 | -0.004 |
| predicted_AB | 5.000 | 0.381 |
| predicted_AVG | 0.200 | 0.012 |
| predicted_BB | 0.000 | -0.076 |
| predicted_H | 1.000 | 0.132 |
| predicted_HR | 0.000 | -0.087 |
| predicted_OBP | 0.200 | -0.001 |
| predicted_R | 1.000 | 0.376 |
| predicted_RBI | 0.000 | -0.373 |
| predicted_SLG | 0.200 | -0.133 |
| predicted_SO | 2.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 | 3.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 | 3.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.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 | 2 | - | 17.000 | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.000 | 13.000 | 0.2353 | 0.2353 | 0.2353 | 0.2353 | 0.0000 | 0.0000 | 0.0000 | 0.7647 |
| last_10 | 0.20 | 3 | - | 33.000 | 8.000 | 4.000 | 0.000 | 0.000 | 4.000 | 4.000 | 0.000 | 17.000 | 0.2424 | 0.2424 | 0.3636 | 0.2424 | 0.0000 | 0.1212 | 0.0000 | 0.5151 |
| season | 0.60 | 3 | - | 33.000 | 8.000 | 4.000 | 0.000 | 0.000 | 4.000 | 4.000 | 0.000 | 17.000 | 0.2424 | 0.2424 | 0.3636 | 0.2424 | 0.0000 | 0.1212 | 0.0000 | 0.5151 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2990 |
| predicted_3B | 0.0120 |
| predicted_AB | 6.7300 |
| predicted_AVG | 0.2436 |
| predicted_BB | 0.2470 |
| predicted_H | 1.6400 |
| predicted_HBP | 0.0290 |
| predicted_HR | 0.1090 |
| predicted_OBP | 0.2737 |
| predicted_R | 1.1070 |
| predicted_RBI | 0.5630 |
| predicted_SLG | 0.3402 |
| predicted_SO | 3.1100 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.4440 | 0.2990 | 0.3989 | model_form_blend |
| predicted_3B | 0.0000 | 0.0120 | 0.0037 | model_form_blend |
| predicted_AB | 3.6670 | 6.7300 | 4.6187 | model_form_blend |
| predicted_AVG | 0.2720 | 0.2436 | 0.2632 | model_form_blend |
| predicted_BB | 0.0000 | 0.2470 | 0.0767 | model_form_blend |
| predicted_H | 0.5500 | 1.6400 | 0.8887 | model_form_blend |
| predicted_HBP | - | 0.0290 | 0.0290 | form_only |
| predicted_HR | 0.0800 | 0.1090 | 0.0890 | model_form_blend |
| predicted_OBP | 0.2940 | 0.2737 | 0.2877 | model_form_blend |
| predicted_R | 0.4440 | 1.1070 | 0.6500 | model_form_blend |
| predicted_RBI | 0.3100 | 0.5630 | 0.3886 | model_form_blend |
| predicted_SLG | 0.3810 | 0.3402 | 0.3683 | model_form_blend |
| predicted_SO | 1.8890 | 3.1100 | 2.2684 | 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 | 10 |
| Season rows before report date | 10 |
| Report year | 2026 |
| Profile rows used | 9 |
| 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.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 | 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 | 5 |
| 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 | 20260607_BAL@TOR |
| game_type | short |
| mlbID | 669087 |
| playerID | 669087 |
| playerName | Sam Huff |
| pos | C |
| started | False |
| startingPosition | C |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 55.6 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.241 |
| sl_xwoba | 0.132 |
| sl_xba | 0.106 |
| sl_xslg | 0.209 |
| sl_sweet_spot_percent | 25.0 |
| sl_barrel_batted_rate | 25.0 |
| sl_hard_hit_percent | 75.0 |
| sl_exit_velocity_avg | 100.2 |
| sl_launch_angle_avg | 22.5 |
| sl_whiff_percent | 45.5 |
| sl_swing_percent | 57.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 | 2.000 | 2.000 | 2.000 | Pitching_BB | - | - | - | - |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | - | - | - | - |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | - | - | - | - |
| predicted_IP | 3.000 | 3.000 | 3.000 | Pitching_InningsPitched | - | - | - | - |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | - | - | - | - |
| 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 -> 3.0000 (boost 2.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 | starter_usage_guardrail | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 3.0000 (boost 2.9000, better) | - | 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": "694346",
"player_name": "Trey Gibson",
"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": 1.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"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": 2.0,
"predicted_ER": 1.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 3.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": 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": 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": 3.0,
"delta": 2.9,
"percent_delta": 29.0,
"direction": "boost",
"projection_effect": "better",
"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": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 3.0,
"delta": 2.9,
"percent_delta": 29.0,
"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": 2.0,
"predicted_ER": 1.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 3.0,
"predicted_R": 1.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": 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": 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": 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": 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": 3.0,
"delta": 2.9,
"percent_delta": 29.0,
"direction": "boost",
"projection_effect": "better",
"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": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 3.0,
"delta": 2.9,
"percent_delta": 29.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 | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| 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 | 2.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 5.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 3.000 | 2.900 |
| 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 | 0 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - |
| last_10 | 0.35 | 0 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - |
| season | 0.20 | 0 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - |
| Metric | Value |
|---|---|
| predicted_BB | 0.1210 |
| predicted_ER | 0.1620 |
| predicted_ERA | 4.3634 |
| predicted_H | 0.3190 |
| predicted_HR | 0.0460 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.3110 |
| predicted_WHIP | 1.3220 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.1210 | 1.5725 | model_form_blend |
| predicted_ER | 1.0000 | 0.1620 | 0.8094 | model_form_blend |
| predicted_ERA | - | 4.3634 | 4.3634 | form_only |
| predicted_H | 5.0000 | 0.3190 | 3.9351 | model_form_blend |
| predicted_HR | 0.0000 | 0.0460 | 0.0105 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 4.0000 | 0.3110 | 3.1608 | model_form_blend |
| predicted_WHIP | - | 1.3220 | 1.3220 | 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 | 0 |
| Season rows before report date | 0 |
| Report year | 2026 |
| Profile rows used | 0 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 3.0 |
| H | 5 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 4 |
| HR | 0 |
| BF | 16 |
| Pitches | 73 |
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_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 0.267 | 0.000 | 1.733 | 2.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 0.667 | 1.000 | 2.333 | 2.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 1.067 | 1.000 | 2.933 | 3.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.720 | 1.000 | 0.480 | 0.200 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.933 | 1.000 | -0.933 | -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.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": "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": 2.0,
"predicted_ER": 3.0,
"predicted_H": 4.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": 3.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 1.2,
"predicted_R": 3.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": 3.0,
"after": 3.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": 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": 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": 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": 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 | 2.000 | - |
| predicted_ER | 3.000 | - |
| predicted_H | 4.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 | 2.000 | 1.000 | 6.000 | 1.000 | 2.0769 | 0.6923 | 0.2308 | 0.4615 | 0.2308 | 1.3846 | 0.2308 |
| last_10 | 0.35 | 10 | 8.200 | 3.000 | 6.000 | 2.000 | 9.000 | 2.000 | 3.1154 | 0.9231 | 0.3462 | 0.6923 | 0.2308 | 1.0385 | 0.2308 |
| season | 0.20 | 15 | 12.200 | 10.000 | 16.000 | 4.000 | 14.000 | 3.000 | 7.1053 | 1.5789 | 0.7895 | 1.2632 | 0.3158 | 1.1053 | 0.2368 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3260 |
| predicted_ER | 0.4510 |
| predicted_ERA | 4.0576 |
| predicted_H | 0.8730 |
| predicted_HR | 0.1700 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0250 |
| predicted_WHIP | 1.1981 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.3260 | 1.3834 | model_form_blend |
| predicted_ER | 3.0000 | 0.4510 | 2.0610 | model_form_blend |
| predicted_ERA | - | 4.0576 | 4.0576 | form_only |
| predicted_H | 4.0000 | 0.8730 | 2.8481 | model_form_blend |
| predicted_HR | 0.0000 | 0.1700 | 0.0626 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0250 | 0.3776 | model_form_blend |
| predicted_WHIP | - | 1.1981 | 1.1981 | 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.2 |
| H | 4 |
| R | 3 |
| ER | 3 |
| BB | 2 |
| SO | 0 |
| HR | 0 |
| BF | 11 |
| Pitches | 45 |
| 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 | 7.11 |
| Pitching_Flyouts | 0 |
| 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 | 9 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260604_BAL@BOS |
| game_type | full |
| mlbID | 552640 |
| playerID | 552640 |
| playerName | Andrew Kittredge |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-04 |
| sl_k_percent | 23.3 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.363 |
| sl_xwoba | 0.282 |
| sl_sweet_spot_percent | 39.0 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 31.7 |
| sl_whiff_percent | 25.0 |
| sl_swing_percent | 52.8 |
| sl_avg_best_speed | 74.573591 |
| sl_avg_hyper_speed | 92.964046 |
| 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.379 | 0.000 | -0.379 | 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 | 0.966 | 1.000 | -0.966 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.938 | 1.000 | 0.162 | 0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.172 | 1.000 | -0.172 | 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": "689296",
"player_name": "Anthony Nunez",
"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": 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.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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 | 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 | 3.000 | 6.000 | 3.000 | 6.000 | 0.000 | 5.0625 | 1.6875 | 0.5625 | 1.1250 | 0.5625 | 1.1250 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 8.000 | 11.000 | 4.000 | 12.000 | 0.000 | 7.2000 | 1.5000 | 0.8000 | 1.1000 | 0.4000 | 1.2000 | 0.0000 |
| season | 0.20 | 28 | 30.000 | 14.000 | 26.000 | 9.000 | 34.000 | 4.000 | 4.2000 | 1.1667 | 0.4667 | 0.8667 | 0.3000 | 1.1333 | 0.1333 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4130 |
| predicted_ER | 0.5620 |
| predicted_ERA | 5.0547 |
| predicted_H | 1.0160 |
| predicted_HR | 0.0780 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0530 |
| predicted_WHIP | 1.4281 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4130 | 0.1886 | model_form_blend |
| predicted_ER | 0.0000 | 0.5620 | 0.2566 | model_form_blend |
| predicted_ERA | - | 5.0547 | 5.0547 | form_only |
| predicted_H | 0.0000 | 1.0160 | 0.4639 | model_form_blend |
| predicted_HR | 0.0000 | 0.0780 | 0.0356 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0530 | 1.0242 | model_form_blend |
| predicted_WHIP | - | 1.4281 | 1.4281 | 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.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| 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 | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.10 |
| 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 | 20 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 14 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260605_BAL@TOR |
| game_type | full |
| mlbID | 689296 |
| playerID | 689296 |
| playerName | Anthony Nunez |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-05 |
| sl_k_percent | 26.0 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.317 |
| sl_xwoba | 0.325 |
| sl_sweet_spot_percent | 40.0 |
| sl_barrel_batted_rate | 9.4 |
| sl_hard_hit_percent | 43.5 |
| sl_whiff_percent | 35.0 |
| sl_swing_percent | 48.6 |
| sl_avg_best_speed | 78.157867561 |
| sl_avg_hyper_speed | 94.612312683 |
| 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.310 | 0.000 | -0.310 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.103 | 1.000 | -0.103 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.276 | 1.000 | -0.276 | -1.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.834 | 0.200 | 0.366 | 1.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.069 | 1.000 | -0.069 | 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": "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": 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.2,
"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.2,
"delta": 0.2,
"percent_delta": 0.2,
"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.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": 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.2,
"delta": 0.2,
"percent_delta": 0.2,
"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.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 | 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 | 3.000 | 2.000 | 5.000 | 1.000 | 1.5882 | 0.8824 | 0.1765 | 0.5294 | 0.3529 | 0.8823 | 0.1765 |
| last_10 | 0.35 | 10 | 9.000 | 2.000 | 7.000 | 2.000 | 11.000 | 1.000 | 2.0000 | 1.0000 | 0.2222 | 0.7778 | 0.2222 | 1.2222 | 0.1111 |
| season | 0.20 | 29 | 27.000 | 3.000 | 8.000 | 9.000 | 31.000 | 2.000 | 1.0000 | 0.6296 | 0.1111 | 0.2963 | 0.3333 | 1.1482 | 0.0741 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3330 |
| predicted_ER | 0.3270 |
| predicted_ERA | 2.9451 |
| predicted_H | 0.7570 |
| predicted_HR | 0.1360 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9960 |
| predicted_WHIP | 1.0903 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3330 | 0.1484 | model_form_blend |
| predicted_ER | 0.0000 | 0.3270 | 0.1457 | model_form_blend |
| predicted_ERA | - | 2.9451 | 2.9451 | form_only |
| predicted_H | 0.0000 | 0.7570 | 0.3373 | model_form_blend |
| predicted_HR | 0.0000 | 0.1360 | 0.0606 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9960 | 0.9982 | model_form_blend |
| predicted_WHIP | - | 1.0903 | 1.0903 | 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.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 5 |
| 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 | 1 |
| Pitching_ERA | 1.00 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 13 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 670329 |
| playerID | 670329 |
| playerName | Rico Garcia |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 32.3 |
| sl_bb_percent | 9.4 |
| sl_woba | 0.171 |
| sl_xwoba | 0.24 |
| sl_sweet_spot_percent | 23.2 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 32.1 |
| sl_whiff_percent | 38.8 |
| sl_swing_percent | 48.9 |
| sl_avg_best_speed | 72.893616071 |
| sl_avg_hyper_speed | 92.808959286 |
| 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.138 | 0.000 | -0.138 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.207 | 0.000 | -0.207 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.483 | 1.000 | -0.483 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.607 | 0.100 | 0.493 | 1.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.552 | 0.000 | 0.448 | 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.1000 (boost 0.4333, 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.1000 (boost 0.4333, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "666974",
"player_name": "Yennier Cano",
"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": 0.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": 0.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": 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": 1.1,
"delta": 0.4333,
"percent_delta": 0.65,
"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.1,
"delta": 0.4333,
"percent_delta": 0.65,
"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.6667,
"after": 1.1,
"delta": 0.4333,
"percent_delta": 0.6499,
"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.1,
"delta": 0.4333,
"percent_delta": 0.6499,
"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.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 | 2.100 | 2.000 | 4.000 | 0.000 | 1.000 | 0.000 | 7.7143 | 1.7143 | 0.8571 | 1.7143 | 0.0000 | 0.4286 | 0.0000 |
| last_10 | 0.35 | 10 | 7.100 | 3.000 | 5.000 | 2.000 | 5.000 | 0.000 | 3.6818 | 0.9545 | 0.4091 | 0.6818 | 0.2727 | 0.6818 | 0.0000 |
| season | 0.20 | 28 | 21.100 | 5.000 | 11.000 | 3.000 | 16.000 | 1.000 | 2.1094 | 0.6562 | 0.2344 | 0.5156 | 0.1406 | 0.7500 | 0.0469 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1520 |
| predicted_ER | 0.3150 |
| predicted_ERA | 4.7377 |
| predicted_H | 0.6150 |
| predicted_HR | 0.0480 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.4620 |
| predicted_WHIP | 1.2830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1520 | 0.0639 | model_form_blend |
| predicted_ER | 0.0000 | 0.3150 | 0.1325 | model_form_blend |
| predicted_ERA | - | 4.7377 | 4.7377 | form_only |
| predicted_H | 0.0000 | 0.6150 | 0.2587 | model_form_blend |
| predicted_HR | 0.0000 | 0.0480 | 0.0202 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.4620 | 0.7737 | model_form_blend |
| predicted_WHIP | - | 1.2830 | 1.2830 | 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.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| 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 | 2 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.53 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 666974 |
| playerID | 666974 |
| playerName | Yennier Cano |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 3.8 |
| sl_woba | 0.221 |
| sl_xwoba | 0.296 |
| sl_sweet_spot_percent | 23.3 |
| sl_barrel_batted_rate | 10.0 |
| sl_hard_hit_percent | 43.3 |
| sl_whiff_percent | 25.2 |
| sl_swing_percent | 46.6 |
| sl_avg_best_speed | 76.705216333 |
| sl_avg_hyper_speed | 94.249823167 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | WAS 4 - 2 SF | WAS | 0.582 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | WAS 4 - 2 SF | WAS | - | 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.8000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5822 |
| 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.573 | 3.898 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 4 | 2 | 0.5822 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 4 | 2 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 4 | 2 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 4 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4313197026022305,
"base_low_score_probability": 0.4228624535315985,
"low_score_signal_threshold": 0.5028624535315985,
"low_score_signal_strength": 0.008457249070632,
"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": 6,
"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": 76,
"near_bucket_sample_size": 9,
"medium_bucket_sample_size": 17,
"wide_bucket_sample_size": 76,
"global_sample_size": 143,
"bucket_scope": "pooled_0.12",
"sparse_bucket": false,
"empirical_hit_rate": 0.5526,
"bayesian_hit_rate": 0.5426,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8085,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6644,
"calibrated_pick_probability": 0.5822,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "SF",
"games": 65,
"wins": 26,
"losses": 39,
"win_pct": 0.4,
"runs_scored": 270,
"runs_allowed": 319,
"run_differential": -49,
"run_differential_per_game": -0.7538461538461538,
"available": true
},
"away": {
"team": "WAS",
"games": 66,
"wins": 33,
"losses": 33,
"win_pct": 0.5,
"runs_scored": 352,
"runs_allowed": 348,
"run_differential": 4,
"run_differential_per_game": 0.06060606060606061,
"available": true
},
"run_differential_edge_per_game": -0.8145,
"win_pct_edge": -0.1,
"quality_edge": -0.9645,
"margin_adjustment": -0.4051,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.933,
"home_runs": 1.998,
"home_win_probability": 0.3356
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "WAS",
"guardrail_predicted_team": "WAS",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "WAS",
"output_opponent_team": "SF",
"final_score_winner": "WAS",
"pre_simulation_winner": "WAS",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "WAS 4 - 2 SF",
"winner": "WAS"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "WAS 4 - 2 SF",
"winner": "WAS"
},
"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": "SF",
"games": 65,
"wins": 26,
"losses": 39,
"win_pct": 0.4,
"runs_scored": 270,
"runs_allowed": 319,
"run_differential": -49,
"run_differential_per_game": -0.7538461538461538,
"available": true
},
"away": {
"team": "WAS",
"games": 66,
"wins": 33,
"losses": 33,
"win_pct": 0.5,
"runs_scored": 352,
"runs_allowed": 348,
"run_differential": 4,
"run_differential_per_game": 0.06060606060606061,
"available": true
}
}
}{
"applied": false,
"raw_margin": -1.9347,
"final_margin": -1.9347,
"margin_cap": 2.0,
"season_quality_edge": 0.9645,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.58218,
"final_confidence": 0.58218,
"confidence_cap": 0.66,
"score_gap": 1.9347,
"calibration_sample_size": 76,
"calibration_empirical_hit_rate": 0.5526,
"calibration_bayesian_hit_rate": 0.5426,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.9645,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is moderate",
"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": 2,
"score_text": "WAS 4 - 2 SF",
"winner": "WAS"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "WAS 4 - 2 SF",
"winner": "WAS"
},
"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": 2,
"confidence": 0.5821799999999999,
"home_win_probability": 0.4178200000000001,
"away_win_probability": 0.5821799999999999,
"predicted_score_text": "WAS 4 - 2 SF",
"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": "WAS",
"original_runs": 4,
"run_delta": 0.2745,
"adjusted_runs": 4,
"lineup": {
"players_used": 8,
"total_weight": 47.0,
"quality": 0.21913353041510245,
"contact": 0.25437658434638266,
"power": 0.2523821071570768,
"discipline": 0.17422262549857861,
"xwoba": 0.33453191489361706,
"recent_xwoba": 0.33453191489361706,
"barrel": 9.929787234042553,
"ab_hard_contact": 0.10823464336667869,
"ab_bat_speed": 69.58978449853583,
"ab_strikeout_rate": 0.19582351131706163,
"available_players": 8,
"top_players": [
{
"player_id": "695578",
"player_name": "James Wood",
"position": "RF",
"weight": 7.0,
"quality": 1.5447461294609885,
"contact": 1.5022893026165127,
"power": 2.0,
"discipline": 0.5885099521289995,
"xwoba": 0.433,
"recent_xwoba": 0.433,
"barrel": 25.5,
"ab_hard_contact": 1.3435428416476838,
"ab_bat_speed": 74.21144047619048,
"ab_strikeout_rate": 0.2949829931972789,
"available": 1.0
},
{
"player_id": "683083",
"player_name": "Nasim Nuñez",
"position": "2B",
"weight": 6.0,
"quality": -0.874736702042111,
"contact": -1.0978235346040899,
"power": -1.661454308688434,
"discipline": 0.29695893172083654,
"xwoba": 0.272,
"recent_xwoba": 0.272,
"barrel": 0.0,
"ab_hard_contact": -1.2073718880543831,
"ab_bat_speed": 63.84837018140589,
"ab_strikeout_rate": 0.19931972789115648,
"available": 1.0
},
{
"player_id": "678391",
"player_name": "Jorbit Vivas",
"position": "3B",
"weight": 4.0,
"quality": -0.4669221008349171,
"contact": -0.8843645689699796,
"power": -1.3591014065507732,
"discipline": 0.44442151675484987,
"xwoba": 0.282,
"recent_xwoba": 0.282,
"barrel": 3.0,
"ab_hard_contact": -0.9374567024440271,
"ab_bat_speed": 67.52140625,
"ab_strikeout_rate": 0.1925,
"available": 1.0
},
{
"player_id": "678554",
"player_name": "Curtis Mead",
"position": "1B",
"weight": 5.0,
"quality": 0.5594028266576963,
"contact": 1.0125060468981972,
"power": 0.8190020739755296,
"discipline": 1.007461586441261,
"xwoba": 0.375,
"recent_xwoba": 0.375,
"barrel": 10.7,
"ab_hard_contact": 0.3248033842724965,
"ab_bat_speed": 71.61702574525745,
"ab_strikeout_rate": 0.1573170731707317,
"available": 1.0
},
{
"player_id": "682928",
"player_name": "CJ Abrams",
"position": "SS",
"weight": 7.0,
"quality": 0.5586365960398161,
"contact": 0.6971346057439971,
"power": 0.7257130921082715,
"discipline": 0.12391502324835645,
"xwoba": 0.363,
"recent_xwoba": 0.363,
"barrel": 10.9,
"ab_hard_contact": 0.6494999374035231,
"ab_bat_speed": 71.01854023569024,
"ab_strikeout_rate": 0.2077922077922078,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "657277",
"player_name": "Logan Webb",
"quality": -0.10849915724868968,
"contact": 0.04826113147310617,
"command": -0.37085938229778803,
"movement": -0.2986810566154401,
"xwoba": 0.315,
"whiff": 20.6,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "SF",
"original_runs": 2,
"run_delta": 0.135,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 54.0,
"quality": -0.07110406508392988,
"contact": 0.04492969739838231,
"power": 0.054460098589485834,
"discipline": -0.2063867855621387,
"xwoba": 0.3133148148148148,
"recent_xwoba": 0.3133148148148148,
"barrel": 7.851851851851852,
"ab_hard_contact": -0.33967986242545095,
"ab_bat_speed": 69.20605711977993,
"ab_strikeout_rate": 0.20474481025349664,
"available_players": 9,
"top_players": [
{
"player_id": "669477",
"player_name": "Casey Schmitt",
"position": "LF",
"weight": 7.0,
"quality": 0.5239386014850839,
"contact": 0.6728718519151136,
"power": 1.1231337766064329,
"discipline": -0.6309056053983592,
"xwoba": 0.348,
"recent_xwoba": 0.348,
"barrel": 13.6,
"ab_hard_contact": -0.09122922977609496,
"ab_bat_speed": 70.20570686680469,
"ab_strikeout_rate": 0.2028985507246377,
"available": 1.0
},
{
"player_id": "687551",
"player_name": "Drew Gilbert",
"position": "CF",
"weight": 5.0,
"quality": -0.4819532827719145,
"contact": -1.091691457730484,
"power": -1.1164012922856603,
"discipline": -0.39800285299304916,
"xwoba": 0.258,
"recent_xwoba": 0.258,
"barrel": 3.0,
"ab_hard_contact": -1.357740131427489,
"ab_bat_speed": 67.10556862745098,
"ab_strikeout_rate": 0.20735294117647057,
"available": 1.0
},
{
"player_id": "656305",
"player_name": "Matt Chapman",
"position": "3B",
"weight": 6.0,
"quality": -0.5833962884887082,
"contact": -0.6748728178846649,
"power": -0.6872344891450499,
"discipline": 0.18292935797023835,
"xwoba": 0.281,
"recent_xwoba": 0.281,
"barrel": 5.5,
"ab_hard_contact": -0.5488802590914754,
"ab_bat_speed": 74.09591194968554,
"ab_strikeout_rate": 0.2362778730703259,
"available": 1.0
},
{
"player_id": "805811",
"player_name": "Bryce Eldridge",
"position": "1B",
"weight": 4.0,
"quality": 0.21301581297460218,
"contact": 1.2966618125776395,
"power": 1.083842442136139,
"discipline": 0.2943500881834213,
"xwoba": 0.377,
"recent_xwoba": 0.377,
"barrel": 9.8,
"ab_hard_contact": -0.3383892525153185,
"ab_bat_speed": 73.21211734693877,
"ab_strikeout_rate": 0.30357142857142855,
"available": 1.0
},
{
"player_id": "650333",
"player_name": "Luis Arraez",
"position": "2B",
"weight": 7.0,
"quality": -0.2527007189219081,
"contact": 0.1824689374609265,
"power": -0.9303335350109546,
"discipline": 0.7325559705363627,
"xwoba": 0.307,
"recent_xwoba": 0.307,
"barrel": 0.4,
"ab_hard_contact": -0.6531468906952862,
"ab_bat_speed": 61.88162153750389,
"ab_strikeout_rate": 0.03529411764705882,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "663992",
"player_name": "Richard Lovelady",
"quality": -0.1451603218113667,
"contact": -0.26565365193062407,
"command": -0.600573668012074,
"movement": -0.4921928239448336,
"xwoba": 0.353,
"whiff": 24.4,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
}
},
"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": 2,
"predicted_score_text": "WAS 4 - 2 SF",
"confidence": 0.5821799999999999,
"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": 2,
"score_text": "WAS 4 - 2 SF",
"winner": "WAS"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "WAS 4 - 2 SF",
"winner": "WAS"
},
"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 WAS | True | 1.0230 | 1.0259 | 0.8889 | 8 | 1 |
| Home SF | True | 1.0057 | 1.0057 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1B | Curtis Mead | 89 | 1.0569 | 0.7581 | neutral | 0.3750 | 0.2700 | 0.4810 | 10.70 | 45.90 | 89.50 | 15.40 | 16.30 | 17.80 | 13.30 | 0.1143 |
| LF | Daylen Lile | 130 | 1.0211 | 0.2811 | neutral | 0.3200 | 0.2570 | 0.4210 | 7.60 | 37 | 87.80 | 17.30 | 23.70 | 18.20 | 7.30 | 0.1429 |
| SS | CJ Abrams | 17 | 1.0611 | 0.8142 | negative_batter_regression | 0.3630 | 0.2670 | 0.4640 | 10.90 | 41.60 | 90 | 16.70 | 28.30 | 20.10 | 10.40 | -0.8857 |
| CF | Dylan Crews | 310 | 1.0282 | 0.3763 | positive_batter_regression | 0.3260 | 0.2550 | 0.4540 | 10.20 | 46.90 | 91.30 | 11.80 | 24.60 | 18.50 | 1.50 | 2 |
| RF | James Wood | 14 | 1.1500 | 2 | neutral | 0.4330 | 0.2760 | 0.6210 | 25.50 | 58.60 | 96 | 10.90 | 32.20 | 29.90 | 17.90 | 0.8571 |
| C | Keibert Ruiz | 112 | 0.9749 | -0.3352 | negative_batter_regression | 0.2640 | 0.2190 | 0.3590 | 6.40 | 40.90 | 90 | 17.40 | 14.50 | 14.20 | 3 | -2 |
| 3B | Jorbit Vivas | 390 | 0.9677 | -0.4303 | neutral | 0.2820 | 0.2290 | 0.2980 | 3 | 23.80 | 83.10 | 14.20 | 17.40 | 14.50 | 8.70 | -0.4571 |
| 2B | Nasim Nuñez | 186 | 0.9471 | -0.7051 | neutral | 0.2720 | 0.2230 | 0.2700 | 0 | 20.10 | 84.60 | 8.80 | 22.90 | 20.90 | 10.40 | 0.8286 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SS | Willy Adames | 80 | 1.0025 | 0.0340 | neutral | 0.3000 | 0.2280 | 0.4110 | 9.20 | 42.40 | 89 | 22 | 27.70 | 27.70 | 5.80 | -0.5714 |
| 2B | Luis Arraez | 40 | 0.9832 | -0.2239 | negative_batter_regression | 0.3070 | 0.2930 | 0.3730 | 0.40 | 22.30 | 87.40 | 15.20 | 9.20 | 4.30 | 5.40 | -1 |
| LF | Casey Schmitt | 113 | 1.0598 | 0.7977 | neutral | 0.3480 | 0.2770 | 0.5080 | 13.60 | 44.30 | 89.80 | 21.20 | 22.90 | 19.90 | 2.80 | -0.4857 |
| DH | Rafael Devers | 276 | 1.0002 | 0.0027 | neutral | 0.2900 | 0.2180 | 0.4000 | 9.90 | 49.70 | 91.90 | 12.40 | 31.30 | 31.10 | 6.80 | -0.5429 |
| 1B | Bryce Eldridge | 223 | 1.0492 | 0.6558 | neutral | 0.3770 | 0.2940 | 0.5070 | 9.80 | 52.50 | 92 | 16.90 | 22.80 | 23.40 | 11.70 | 0.7429 |
| C | Eric Haase | 234 | 1.0262 | 0.3493 | negative_batter_regression | 0.3490 | 0.2520 | 0.5180 | 21.90 | 34.40 | 86.90 | 17.20 | 36 | 25.50 | 6.40 | -0.8571 |
| 3B | Matt Chapman | 34 | 0.9499 | -0.6678 | negative_batter_regression | 0.2810 | 0.2130 | 0.3140 | 5.50 | 35.30 | 87.70 | 10.90 | 22.80 | 21.60 | 9.90 | -0.8857 |
| RF | Jung Hoo Lee | 103 | 1.0154 | 0.2059 | neutral | 0.3320 | 0.3110 | 0.4020 | 2.50 | 30.30 | 87.90 | 10.90 | 13.50 | 10.20 | 4.30 | -0.6000 |
| CF | Drew Gilbert | 410 | 0.9650 | -0.4673 | neutral | 0.2580 | 0.2210 | 0.3130 | 3 | 31.40 | 84.60 | 16.30 | 25.50 | 21.30 | 5.70 | -0.7714 |
{
"home": {
"applied": true,
"offense_factor": 1.0057,
"raw_average_factor": 1.0057,
"team_espn_average_rank": 168.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "SS",
"player_id": "642715",
"player_name": "Willy Adames",
"offense_factor": 1.0025,
"quality_score": 0.034,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "642715",
"espn_id": 33675,
"player_name": "Willy Adames",
"team": "SF",
"role": "batter",
"espn_rank": 80,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 80,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 260.0,
"ab_rank": "7",
"r_value": 34.0,
"r_rank": "57",
"h_value": 63.0,
"h_rank": "44",
"avg_value": 0.2423076,
"avg_rank": 102.0,
"2b_value": 18.0,
"2b_rank": "4",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 11.0,
"hr_rank": "41",
"rbi_value": 29.0,
"rbi_rank": "89",
"tb_value": 116.0,
"tb_rank": "287",
"bb_value": 16.0,
"bb_rank": "172",
"so_value": 77.0,
"so_rank": "14",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2877697,
"obp_rank": "142",
"slg_value": 0.4461538,
"slg_rank": "59",
"ops_value": 0.7339235,
"ops_rank": 98.0,
"war_value": 1.38,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 228.0,
"k_percent": 27.7,
"bb_percent": 5.8,
"woba": 0.32,
"xwoba": 0.3,
"xba": 0.228,
"xslg": 0.411,
"sweet_spot_percent": 38.0,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 42.4,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 22.0,
"whiff_percent": 27.7,
"swing_percent": 48.4
},
"components": {
"expected_quality": 0.1325,
"regression_edge": -0.5714,
"xwoba_edge": -0.1429,
"xba_edge": -0.3143,
"xslg_edge": 0.5286,
"barrel_edge": 0.4889,
"hard_hit_edge": 0.5071,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": 0.7833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "650333",
"player_name": "Luis Arraez",
"offense_factor": 0.9832,
"quality_score": -0.2239,
"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": 40,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 40,
"gp_value": 63.0,
"gp_rank": "50",
"ab_value": 248.0,
"ab_rank": "19",
"r_value": 33.0,
"r_rank": "62",
"h_value": 80.0,
"h_rank": "2",
"avg_value": 0.3225806,
"avg_rank": 4.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 4.0,
"3b_rank": "2",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 25.0,
"rbi_rank": "126",
"tb_value": 107.0,
"tb_rank": "855",
"bb_value": 15.0,
"bb_rank": "186",
"so_value": 12.0,
"so_rank": "406",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3589743,
"obp_rank": "41",
"slg_value": 0.4314516,
"slg_rank": "75",
"ops_value": 0.7904259,
"ops_rank": 60.0,
"war_value": 2.07,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 215.0,
"k_percent": 4.3,
"bb_percent": 5.4,
"woba": 0.342,
"xwoba": 0.307,
"xba": 0.293,
"xslg": 0.373,
"sweet_spot_percent": 42.1,
"barrel_batted_rate": 0.4,
"hard_hit_percent": 22.3,
"exit_velocity_avg": 87.4,
"launch_angle_avg": 15.2,
"whiff_percent": 9.2,
"swing_percent": 51.4
},
"components": {
"expected_quality": -0.1036,
"regression_edge": -1.0,
"xwoba_edge": 0.0571,
"xba_edge": 1.5429,
"xslg_edge": -0.0143,
"barrel_edge": -1.4667,
"hard_hit_edge": -2.3643,
"exit_velocity_edge": -0.56,
"sweet_spot_edge": 1.4667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "669477",
"player_name": "Casey Schmitt",
"offense_factor": 1.0598,
"quality_score": 0.7977,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669477",
"espn_id": 4301949,
"player_name": "Casey Schmitt",
"team": "SF",
"role": "batter",
"espn_rank": 113,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 113,
"gp_value": 58.0,
"gp_rank": "141",
"ab_value": 231.0,
"ab_rank": "65",
"r_value": 31.0,
"r_rank": "72",
"h_value": 65.0,
"h_rank": "32",
"avg_value": 0.2813852,
"avg_rank": 32.0,
"2b_value": 12.0,
"2b_rank": "54",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 15.0,
"hr_rank": "14",
"rbi_value": 38.0,
"rbi_rank": "29",
"tb_value": 124.0,
"tb_rank": "244",
"bb_value": 7.0,
"bb_rank": "313",
"so_value": 49.0,
"so_rank": "106",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3130081,
"obp_rank": "117",
"slg_value": 0.5367965,
"slg_rank": "11",
"ops_value": 0.8498046,
"ops_rank": 31.0,
"war_value": 1.01,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 190.0,
"k_percent": 19.9,
"bb_percent": 2.8,
"woba": 0.365,
"xwoba": 0.348,
"xba": 0.277,
"xslg": 0.508,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 13.6,
"hard_hit_percent": 44.3,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 21.2,
"whiff_percent": 22.9,
"swing_percent": 52.6
},
"components": {
"expected_quality": 1.1531,
"regression_edge": -0.4857,
"xwoba_edge": 1.2286,
"xba_edge": 1.0857,
"xslg_edge": 1.9143,
"barrel_edge": 1.4667,
"hard_hit_edge": 0.7786,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.5833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "646240",
"player_name": "Rafael Devers",
"offense_factor": 1.0002,
"quality_score": 0.0027,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "646240",
"espn_id": 33859,
"player_name": "Rafael Devers",
"team": "SF",
"role": "batter",
"espn_rank": 276,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 276,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 258.0,
"ab_rank": "10",
"r_value": 30.0,
"r_rank": "79",
"h_value": 62.0,
"h_rank": "47",
"avg_value": 0.24031,
"avg_rank": 106.0,
"2b_value": 20.0,
"2b_rank": "1",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 32.0,
"rbi_rank": "62",
"tb_value": 108.0,
"tb_rank": "390",
"bb_value": 19.0,
"bb_rank": "135",
"so_value": 87.0,
"so_rank": "5",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2928571,
"obp_rank": "137",
"slg_value": 0.4186046,
"slg_rank": "84",
"ops_value": 0.7114617,
"ops_rank": 110.0,
"war_value": 0.15,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 223.0,
"k_percent": 31.1,
"bb_percent": 6.8,
"woba": 0.309,
"xwoba": 0.29,
"xba": 0.218,
"xslg": 0.4,
"sweet_spot_percent": 31.8,
"barrel_batted_rate": 9.9,
"hard_hit_percent": 49.7,
"exit_velocity_avg": 91.9,
"launch_angle_avg": 12.4,
"whiff_percent": 31.3,
"swing_percent": 50.8
},
"components": {
"expected_quality": 0.0915,
"regression_edge": -0.5429,
"xwoba_edge": -0.4286,
"xba_edge": -0.6,
"xslg_edge": 0.3714,
"barrel_edge": 0.6444,
"hard_hit_edge": 1.55,
"exit_velocity_edge": 1.24,
"sweet_spot_edge": -0.25,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "805811",
"player_name": "Bryce Eldridge",
"offense_factor": 1.0492,
"quality_score": 0.6558,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805811",
"espn_id": 5149064,
"player_name": "Bryce Eldridge",
"team": "SF",
"role": "batter",
"espn_rank": 223,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 223,
"gp_value": 25.0,
"gp_rank": "365",
"ab_value": 82.0,
"ab_rank": "342",
"r_value": 13.0,
"r_rank": "277",
"h_value": 23.0,
"h_rank": "287",
"avg_value": 0.2804878,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 6.0,
"rbi_rank": "364",
"tb_value": 36.0,
"tb_rank": "1644",
"bb_value": 11.0,
"bb_rank": "245",
"so_value": 22.0,
"so_rank": "310",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3617021,
"obp_rank": "-",
"slg_value": 0.4390243,
"slg_rank": "-",
"ops_value": 0.8007264,
"ops_rank": null,
"war_value": 0.34,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 46.0,
"k_percent": 23.4,
"bb_percent": 11.7,
"woba": 0.351,
"xwoba": 0.377,
"xba": 0.294,
"xslg": 0.507,
"sweet_spot_percent": 36.1,
"barrel_batted_rate": 9.8,
"hard_hit_percent": 52.5,
"exit_velocity_avg": 92.0,
"launch_angle_avg": 16.9,
"whiff_percent": 22.8,
"swing_percent": 46.4
},
"components": {
"expected_quality": 1.5736,
"regression_edge": 0.7429,
"xwoba_edge": 2.0571,
"xba_edge": 1.5714,
"xslg_edge": 1.9,
"barrel_edge": 0.6222,
"hard_hit_edge": 1.95,
"exit_velocity_edge": 1.28,
"sweet_spot_edge": 0.4667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "606992",
"player_name": "Eric Haase",
"offense_factor": 1.0262,
"quality_score": 0.3493,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "606992",
"espn_id": 33452,
"player_name": "Eric Haase",
"team": "SF",
"role": "batter",
"espn_rank": 234,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 234,
"gp_value": 16.0,
"gp_rank": "417",
"ab_value": 44.0,
"ab_rank": "407",
"r_value": 7.0,
"r_rank": "370",
"h_value": 11.0,
"h_rank": "384",
"avg_value": 0.25,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": "324",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 9.0,
"rbi_rank": "311",
"tb_value": 26.0,
"tb_rank": "1608",
"bb_value": 3.0,
"bb_rank": "406",
"so_value": 12.0,
"so_rank": "406",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2978723,
"obp_rank": "-",
"slg_value": 0.590909,
"slg_rank": "-",
"ops_value": 0.8887813,
"ops_rank": null,
"war_value": 0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 29.0,
"k_percent": 25.5,
"bb_percent": 6.4,
"woba": 0.379,
"xwoba": 0.349,
"xba": 0.252,
"xslg": 0.518,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 21.9,
"hard_hit_percent": 34.4,
"exit_velocity_avg": 86.9,
"launch_angle_avg": 17.2,
"whiff_percent": 36.0,
"swing_percent": 50.6
},
"components": {
"expected_quality": 1.0422,
"regression_edge": -0.8571,
"xwoba_edge": 1.2571,
"xba_edge": 0.3714,
"xslg_edge": 2.0571,
"barrel_edge": 2.5,
"hard_hit_edge": -0.6357,
"exit_velocity_edge": -0.76,
"sweet_spot_edge": 0.7,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "656305",
"player_name": "Matt Chapman",
"offense_factor": 0.9499,
"quality_score": -0.6678,
"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": 34,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 34,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 241.0,
"ab_rank": "29",
"r_value": 30.0,
"r_rank": "79",
"h_value": 59.0,
"h_rank": "68",
"avg_value": 0.2448132,
"avg_rank": 97.0,
"2b_value": 16.0,
"2b_rank": "10",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 4.0,
"hr_rank": "182",
"rbi_value": 33.0,
"rbi_rank": "52",
"tb_value": 89.0,
"tb_rank": "740",
"bb_value": 27.0,
"bb_rank": "55",
"so_value": 59.0,
"so_rank": "60",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3260073,
"obp_rank": "96",
"slg_value": 0.3692946,
"slg_rank": "128",
"ops_value": 0.6953019,
"ops_rank": 119.0,
"war_value": 2.22,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 221.0,
"k_percent": 21.6,
"bb_percent": 9.9,
"woba": 0.312,
"xwoba": 0.281,
"xba": 0.213,
"xslg": 0.314,
"sweet_spot_percent": 23.9,
"barrel_batted_rate": 5.5,
"hard_hit_percent": 35.3,
"exit_velocity_avg": 87.7,
"launch_angle_avg": 10.9,
"whiff_percent": 22.8,
"swing_percent": 44.1
},
"components": {
"expected_quality": -0.6323,
"regression_edge": -0.8857,
"xwoba_edge": -0.6857,
"xba_edge": -0.7429,
"xslg_edge": -0.8571,
"barrel_edge": -0.3333,
"hard_hit_edge": -0.5071,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": -1.5667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "808982",
"player_name": "Jung Hoo Lee",
"offense_factor": 1.0154,
"quality_score": 0.2059,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "808982",
"espn_id": 5134621,
"player_name": "Jung Hoo Lee",
"team": "SF",
"role": "batter",
"espn_rank": 103,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 103,
"gp_value": 58.0,
"gp_rank": "141",
"ab_value": 220.0,
"ab_rank": "96",
"r_value": 30.0,
"r_rank": "79",
"h_value": 71.0,
"h_rank": "12",
"avg_value": 0.3227272,
"avg_rank": 4.0,
"2b_value": 14.0,
"2b_rank": "26",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 22.0,
"rbi_rank": "159",
"tb_value": 98.0,
"tb_rank": "695",
"bb_value": 10.0,
"bb_rank": "261",
"so_value": 24.0,
"so_rank": "294",
"sb_value": 2.0,
"sb_rank": "167",
"obp_value": 0.3574468,
"obp_rank": "47",
"slg_value": 0.4454545,
"slg_rank": "61",
"ops_value": 0.8029013,
"ops_rank": 53.0,
"war_value": 1.15,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 193.0,
"k_percent": 10.2,
"bb_percent": 4.3,
"woba": 0.353,
"xwoba": 0.332,
"xba": 0.311,
"xslg": 0.402,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 2.5,
"hard_hit_percent": 30.3,
"exit_velocity_avg": 87.9,
"launch_angle_avg": 10.9,
"whiff_percent": 13.5,
"swing_percent": 46.6
},
"components": {
"expected_quality": 0.3705,
"regression_edge": -0.6,
"xwoba_edge": 0.7714,
"xba_edge": 2.0571,
"xslg_edge": 0.4,
"barrel_edge": -1.0,
"hard_hit_edge": -1.2214,
"exit_velocity_edge": -0.36,
"sweet_spot_edge": 0.85,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "687551",
"player_name": "Drew Gilbert",
"offense_factor": 0.965,
"quality_score": -0.4673,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687551",
"espn_id": 4619467,
"player_name": "Drew Gilbert",
"team": "SF",
"role": "batter",
"espn_rank": 410,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 410,
"gp_value": 47.0,
"gp_rank": "223",
"ab_value": 130.0,
"ab_rank": "239",
"r_value": 14.0,
"r_rank": "261",
"h_value": 30.0,
"h_rank": "239",
"avg_value": 0.2307692,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": "242",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 3.0,
"hr_rank": "219",
"rbi_value": 12.0,
"rbi_rank": "273",
"tb_value": 48.0,
"tb_rank": "1162",
"bb_value": 8.0,
"bb_rank": "293",
"so_value": 30.0,
"so_rank": "239",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.2805755,
"obp_rank": "-",
"slg_value": 0.3692307,
"slg_rank": "-",
"ops_value": 0.6498062,
"ops_rank": null,
"war_value": -0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 105.0,
"k_percent": 21.3,
"bb_percent": 5.7,
"woba": 0.285,
"xwoba": 0.258,
"xba": 0.221,
"xslg": 0.313,
"sweet_spot_percent": 29.4,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 31.4,
"exit_velocity_avg": 84.6,
"launch_angle_avg": 16.3,
"whiff_percent": 25.5,
"swing_percent": 45.4
},
"components": {
"expected_quality": -1.0129,
"regression_edge": -0.7714,
"xwoba_edge": -1.3429,
"xba_edge": -0.5143,
"xslg_edge": -0.8714,
"barrel_edge": -0.8889,
"hard_hit_edge": -1.0643,
"exit_velocity_edge": -1.68,
"sweet_spot_edge": -0.65,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.023,
"raw_average_factor": 1.0259,
"team_espn_average_rank": 156.0,
"coverage_weight": 0.8889,
"covered_batters": 8,
"missing_batters": 1,
"players": [
{
"position": "1B",
"player_id": "678554",
"player_name": "Curtis Mead",
"offense_factor": 1.0569,
"quality_score": 0.7581,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "678554",
"espn_id": 42360,
"player_name": "Curtis Mead",
"team": "WSH",
"role": "batter",
"espn_rank": 89,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 89,
"gp_value": 51.0,
"gp_rank": "197",
"ab_value": 154.0,
"ab_rank": "207",
"r_value": 29.0,
"r_rank": "93",
"h_value": 38.0,
"h_rank": "184",
"avg_value": 0.2467532,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": "93",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 9.0,
"hr_rank": "60",
"rbi_value": 28.0,
"rbi_rank": "99",
"tb_value": 75.0,
"tb_rank": "811",
"bb_value": 24.0,
"bb_rank": "77",
"so_value": 32.0,
"so_rank": "224",
"sb_value": 3.0,
"sb_rank": "133",
"obp_value": 0.3555555,
"obp_rank": "-",
"slg_value": 0.4870129,
"slg_rank": "-",
"ops_value": 0.8425684,
"ops_rank": null,
"war_value": 1.28,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 141.0,
"k_percent": 17.8,
"bb_percent": 13.3,
"woba": 0.371,
"xwoba": 0.375,
"xba": 0.27,
"xslg": 0.481,
"sweet_spot_percent": 37.7,
"barrel_batted_rate": 10.7,
"hard_hit_percent": 45.9,
"exit_velocity_avg": 89.5,
"launch_angle_avg": 15.4,
"whiff_percent": 16.3,
"swing_percent": 41.4
},
"components": {
"expected_quality": 1.3568,
"regression_edge": 0.1143,
"xwoba_edge": 2.0,
"xba_edge": 0.8857,
"xslg_edge": 1.5286,
"barrel_edge": 0.8222,
"hard_hit_edge": 1.0071,
"exit_velocity_edge": 0.28,
"sweet_spot_edge": 0.7333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "695734",
"player_name": "Daylen Lile",
"offense_factor": 1.0211,
"quality_score": 0.2811,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695734",
"espn_id": 4917889,
"player_name": "Daylen Lile",
"team": "WSH",
"role": "batter",
"espn_rank": 130,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 130,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 260.0,
"ab_rank": "7",
"r_value": 39.0,
"r_rank": "34",
"h_value": 66.0,
"h_rank": "28",
"avg_value": 0.2538461,
"avg_rank": 78.0,
"2b_value": 15.0,
"2b_rank": "16",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 8.0,
"hr_rank": "76",
"rbi_value": 30.0,
"rbi_rank": "78",
"tb_value": 107.0,
"tb_rank": "388",
"bb_value": 21.0,
"bb_rank": "108",
"so_value": 52.0,
"so_rank": "87",
"sb_value": 5.0,
"sb_rank": "78",
"obp_value": 0.3076923,
"obp_rank": "125",
"slg_value": 0.4115384,
"slg_rank": "92",
"ops_value": 0.7192307,
"ops_rank": 106.0,
"war_value": 0.91,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 241.0,
"k_percent": 18.2,
"bb_percent": 7.3,
"woba": 0.315,
"xwoba": 0.32,
"xba": 0.257,
"xslg": 0.421,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 37.0,
"exit_velocity_avg": 87.8,
"launch_angle_avg": 17.3,
"whiff_percent": 23.7,
"swing_percent": 54.7
},
"components": {
"expected_quality": 0.3036,
"regression_edge": 0.1429,
"xwoba_edge": 0.4286,
"xba_edge": 0.5143,
"xslg_edge": 0.6714,
"barrel_edge": 0.1333,
"hard_hit_edge": -0.2643,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": 0.1833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "682928",
"player_name": "CJ Abrams",
"offense_factor": 1.0611,
"quality_score": 0.8142,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "682928",
"espn_id": 42402,
"player_name": "CJ Abrams",
"team": "WSH",
"role": "batter",
"espn_rank": 17,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 17,
"gp_value": 65.0,
"gp_rank": "20",
"ab_value": 238.0,
"ab_rank": "40",
"r_value": 41.0,
"r_rank": "18",
"h_value": 68.0,
"h_rank": "22",
"avg_value": 0.2857142,
"avg_rank": 24.0,
"2b_value": 13.0,
"2b_rank": "37",
"3b_value": 2.0,
"3b_rank": "12",
"hr_value": 14.0,
"hr_rank": "17",
"rbi_value": 49.0,
"rbi_rank": "2",
"tb_value": 127.0,
"tb_rank": "134",
"bb_value": 29.0,
"bb_rank": "48",
"so_value": 56.0,
"so_rank": "74",
"sb_value": 9.0,
"sb_rank": "37",
"obp_value": 0.3799283,
"obp_rank": "17",
"slg_value": 0.5336134,
"slg_rank": "12",
"ops_value": 0.9135417,
"ops_rank": 13.0,
"war_value": 2.63,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 233.0,
"k_percent": 20.1,
"bb_percent": 10.4,
"woba": 0.394,
"xwoba": 0.363,
"xba": 0.267,
"xslg": 0.464,
"sweet_spot_percent": 35.1,
"barrel_batted_rate": 10.9,
"hard_hit_percent": 41.6,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 16.7,
"whiff_percent": 28.3,
"swing_percent": 50.1
},
"components": {
"expected_quality": 1.091,
"regression_edge": -0.8857,
"xwoba_edge": 1.6571,
"xba_edge": 0.8,
"xslg_edge": 1.2857,
"barrel_edge": 0.8667,
"hard_hit_edge": 0.3929,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 0.3,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "686611",
"player_name": "Dylan Crews",
"offense_factor": 1.0282,
"quality_score": 0.3763,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "686611",
"espn_id": 4719511,
"player_name": "Dylan Crews",
"team": "WSH",
"role": "batter",
"espn_rank": 310,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 310,
"gp_value": 16.0,
"gp_rank": "417",
"ab_value": 61.0,
"ab_rank": "378",
"r_value": 6.0,
"r_rank": "382",
"h_value": 12.0,
"h_rank": "375",
"avg_value": 0.1967213,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": "411",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 2.0,
"hr_rank": "272",
"rbi_value": 6.0,
"rbi_rank": "364",
"tb_value": 19.0,
"tb_rank": "1956",
"bb_value": 1.0,
"bb_rank": "459",
"so_value": 12.0,
"so_rank": "406",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2461538,
"obp_rank": "-",
"slg_value": 0.3114754,
"slg_rank": "-",
"ops_value": 0.5576292,
"ops_rank": null,
"war_value": 0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 30.0,
"k_percent": 18.5,
"bb_percent": 1.5,
"woba": 0.252,
"xwoba": 0.326,
"xba": 0.255,
"xslg": 0.454,
"sweet_spot_percent": 30.6,
"barrel_batted_rate": 10.2,
"hard_hit_percent": 46.9,
"exit_velocity_avg": 91.3,
"launch_angle_avg": 11.8,
"whiff_percent": 24.6,
"swing_percent": 53.2
},
"components": {
"expected_quality": 0.6467,
"regression_edge": 2.0,
"xwoba_edge": 0.6,
"xba_edge": 0.4571,
"xslg_edge": 1.1429,
"barrel_edge": 0.7111,
"hard_hit_edge": 1.15,
"exit_velocity_edge": 1.0,
"sweet_spot_edge": -0.45,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "695578",
"player_name": "James Wood",
"offense_factor": 1.15,
"quality_score": 2.0,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695578",
"espn_id": 4918256,
"player_name": "James Wood",
"team": "WSH",
"role": "batter",
"espn_rank": 14,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 14,
"gp_value": 66.0,
"gp_rank": "2",
"ab_value": 249.0,
"ab_rank": "18",
"r_value": 57.0,
"r_rank": "1",
"h_value": 66.0,
"h_rank": "28",
"avg_value": 0.2650602,
"avg_rank": 59.0,
"2b_value": 15.0,
"2b_rank": "16",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 17.0,
"hr_rank": "6",
"rbi_value": 40.0,
"rbi_rank": "19",
"tb_value": 132.0,
"tb_rank": "416",
"bb_value": 55.0,
"bb_rank": "4",
"so_value": 92.0,
"so_rank": "3",
"sb_value": 10.0,
"sb_rank": "27",
"obp_value": 0.4058441,
"obp_rank": "4",
"slg_value": 0.5301204,
"slg_rank": "15",
"ops_value": 0.9359645,
"ops_rank": 6.0,
"war_value": 2.7,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 255.0,
"k_percent": 29.9,
"bb_percent": 17.9,
"woba": 0.403,
"xwoba": 0.433,
"xba": 0.276,
"xslg": 0.621,
"sweet_spot_percent": 43.9,
"barrel_batted_rate": 25.5,
"hard_hit_percent": 58.6,
"exit_velocity_avg": 96.0,
"launch_angle_avg": 10.9,
"whiff_percent": 32.2,
"swing_percent": 37.9
},
"components": {
"expected_quality": 2.2104,
"regression_edge": 0.8571,
"xwoba_edge": 2.5,
"xba_edge": 1.0571,
"xslg_edge": 2.5,
"barrel_edge": 2.5,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.5,
"sweet_spot_edge": 1.7667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "660688",
"player_name": "Keibert Ruiz",
"offense_factor": 0.9749,
"quality_score": -0.3352,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "660688",
"espn_id": 38827,
"player_name": "Keibert Ruiz",
"team": "WSH",
"role": "batter",
"espn_rank": 112,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 112,
"gp_value": 41.0,
"gp_rank": "264",
"ab_value": 127.0,
"ab_rank": "244",
"r_value": 17.0,
"r_rank": "217",
"h_value": 35.0,
"h_rank": "209",
"avg_value": 0.2755905,
"avg_rank": null,
"2b_value": 14.0,
"2b_rank": "26",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 5.0,
"hr_rank": "157",
"rbi_value": 27.0,
"rbi_rank": "110",
"tb_value": 64.0,
"tb_rank": "1060",
"bb_value": 4.0,
"bb_rank": "385",
"so_value": 19.0,
"so_rank": "343",
"sb_value": 1.0,
"sb_rank": "225",
"obp_value": 0.2985074,
"obp_rank": "-",
"slg_value": 0.503937,
"slg_rank": "-",
"ops_value": 0.8024444,
"ops_rank": null,
"war_value": 1.03,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 109.0,
"k_percent": 14.2,
"bb_percent": 3.0,
"woba": 0.344,
"xwoba": 0.264,
"xba": 0.219,
"xslg": 0.359,
"sweet_spot_percent": 31.8,
"barrel_batted_rate": 6.4,
"hard_hit_percent": 40.9,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 17.4,
"whiff_percent": 14.5,
"swing_percent": 49.1
},
"components": {
"expected_quality": -0.461,
"regression_edge": -2.0,
"xwoba_edge": -1.1714,
"xba_edge": -0.5714,
"xslg_edge": -0.2143,
"barrel_edge": -0.1333,
"hard_hit_edge": 0.2929,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": -0.25,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "678391",
"player_name": "Jorbit Vivas",
"offense_factor": 0.9677,
"quality_score": -0.4303,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "678391",
"espn_id": 4722676,
"player_name": "Jorbit Vivas",
"team": "WSH",
"role": "batter",
"espn_rank": 390,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 390,
"gp_value": 48.0,
"gp_rank": "212",
"ab_value": 117.0,
"ab_rank": "268",
"r_value": 16.0,
"r_rank": "230",
"h_value": 28.0,
"h_rank": "252",
"avg_value": 0.2393162,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": "187",
"3b_value": 0.0,
"3b_rank": "177",
"hr_value": 1.0,
"hr_rank": "337",
"rbi_value": 8.0,
"rbi_rank": "329",
"tb_value": 38.0,
"tb_rank": "1804",
"bb_value": 12.0,
"bb_rank": "230",
"so_value": 20.0,
"so_rank": "331",
"sb_value": 0.0,
"sb_rank": "325",
"obp_value": 0.3259259,
"obp_rank": "-",
"slg_value": 0.3247863,
"slg_rank": "-",
"ops_value": 0.6507122,
"ops_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 116.0,
"k_percent": 14.5,
"bb_percent": 8.7,
"woba": 0.298,
"xwoba": 0.282,
"xba": 0.229,
"xslg": 0.298,
"sweet_spot_percent": 27.7,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 23.8,
"exit_velocity_avg": 83.1,
"launch_angle_avg": 14.2,
"whiff_percent": 17.4,
"swing_percent": 50.2
},
"components": {
"expected_quality": -0.8745,
"regression_edge": -0.4571,
"xwoba_edge": -0.6571,
"xba_edge": -0.2857,
"xslg_edge": -1.0857,
"barrel_edge": -0.8889,
"hard_hit_edge": -2.15,
"exit_velocity_edge": -2.28,
"sweet_spot_edge": -0.9333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "683083",
"player_name": "Nasim Nuñez",
"offense_factor": 0.9471,
"quality_score": -0.7051,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683083",
"espn_id": 4728688,
"player_name": "Nasim Nunez",
"team": "WSH",
"role": "batter",
"espn_rank": 186,
"espn_total_ranked": 549,
"metrics": {
"espn_rank": 186,
"gp_value": 61.0,
"gp_rank": "92",
"ab_value": 181.0,
"ab_rank": "159",
"r_value": 23.0,
"r_rank": "153",
"h_value": 36.0,
"h_rank": "197",
"avg_value": 0.198895,
"avg_rank": 165.0,
"2b_value": 2.0,
"2b_rank": "370",
"3b_value": 1.0,
"3b_rank": "58",
"hr_value": 0.0,
"hr_rank": "420",
"rbi_value": 18.0,
"rbi_rank": "205",
"tb_value": 40.0,
"tb_rank": "1943",
"bb_value": 22.0,
"bb_rank": "93",
"so_value": 44.0,
"so_rank": "138",
"sb_value": 23.0,
"sb_rank": "1",
"obp_value": 0.2878048,
"obp_rank": "142",
"slg_value": 0.2209944,
"slg_rank": "173",
"ops_value": 0.5087992,
"ops_rank": 173.0,
"war_value": 0.51,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 183.0,
"k_percent": 20.9,
"bb_percent": 10.4,
"woba": 0.243,
"xwoba": 0.272,
"xba": 0.223,
"xslg": 0.27,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 20.1,
"exit_velocity_avg": 84.6,
"launch_angle_avg": 8.8,
"whiff_percent": 22.9,
"swing_percent": 47.7
},
"components": {
"expected_quality": -1.1206,
"regression_edge": 0.8286,
"xwoba_edge": -0.9429,
"xba_edge": -0.4571,
"xslg_edge": -1.4857,
"barrel_edge": -1.5556,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -1.68,
"sweet_spot_edge": -0.3333,
"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 WAS | True | 159 | -0.1667 | 0.4500 | 1.0142 | 0.9861 | 1.0585 | 0.9770 | neutral | 0.3530 | 0.3570 | 18.90 | 15.60 | 24.40 | 5.30 | 29.50 | |
| Home SF | True | 211 | -0.1207 | 0.8280 | 1.0103 | 0.9631 | 0.9752 | 1.0124 | neutral | 0.3150 | 0.3050 | 20.30 | 7.60 | 20.60 | 5.70 | 45.50 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away WAS | True | None | 12 | 86.73 | 2408 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.1667 | |
| Home SF | True | None | 87 | 89.13 | 2006 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0325 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0085 |
| home_runs_vs_away_pitcher | 1.0064 |
| home_pitcher_quality_edge | 0.0460 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "657277",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 207.0,
"k_percent": 20.3,
"bb_percent": 7.6,
"woba": 0.305,
"xwoba": 0.315,
"sweet_spot_percent": 29.5,
"barrel_batted_rate": 5.7,
"hard_hit_percent": 45.5,
"avg_best_speed": 78.6912,
"avg_hyper_speed": 94.8886,
"whiff_percent": 20.6,
"swing_percent": 47.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.0412,
"command_and_miss": -0.3521,
"regression_edge": -0.2857,
"xwoba_edge": -0.0143,
"barrel_edge": 0.3111,
"hard_hit_edge": -0.9857,
"whiff_edge": -0.7429,
"bb_edge": 0.375,
"pitch_design_score": -0.0325
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "657277",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 87,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 87,
"pitch_usage": 0.0,
"release_speed": 89.13025424380471,
"release_spin_rate": 2005.537596612616,
"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": 87,
"pitch_usage": 0.0,
"release_speed": 89.13025424380471,
"release_spin_rate": 2005.537596612616,
"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.1303,
"release_spin_rate": 2005.5376,
"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.0325,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.232,
"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.1207,
"sample_weight": 0.828,
"run_prevention_factor": 1.0103,
"strikeout_factor": 0.9631,
"walk_factor": 0.9752,
"homer_factor": 1.0124,
"woba_minus_xwoba": -0.01,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657277",
"espn_id": 41216,
"player_name": "Logan Webb",
"team": "SF",
"role": "pitcher",
"espn_rank": 211,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 211,
"gp_value": 10.0,
"gp_rank": 375,
"gs_value": 10.0,
"gs_rank": 100,
"qs_value": 6.0,
"qs_rank": 26,
"era_value": 4.2471,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 4.0,
"l_rank": 45,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 59.1,
"ip_rank": 92,
"h_value": 56.0,
"h_rank": 84,
"er_value": 28.0,
"er_rank": 78,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 51.0,
"k_rank": 84,
"k_per_9_value": 7.7359548,
"k_per_9_rank": 24,
"whip_value": 1.264,
"whip_rank": null,
"war_value": 0.37,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "663992",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 100.0,
"k_percent": 18.9,
"bb_percent": 15.6,
"woba": 0.357,
"xwoba": 0.353,
"sweet_spot_percent": 30.8,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 29.5,
"avg_best_speed": 74.7427,
"avg_hyper_speed": 93.4871,
"whiff_percent": 24.4,
"swing_percent": 43.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.3552,
"command_and_miss": -0.6521,
"regression_edge": 0.1143,
"xwoba_edge": -1.1,
"barrel_edge": 0.4,
"hard_hit_edge": 1.3,
"whiff_edge": -0.2,
"bb_edge": -1.625,
"pitch_design_score": -0.1667
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663992",
"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": 86.73257270026996,
"release_spin_rate": 2408.1629257304953,
"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": 86.73257270026996,
"release_spin_rate": 2408.1629257304953,
"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.7326,
"release_spin_rate": 2408.1629,
"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.1667,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1911,
"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.1667,
"sample_weight": 0.45,
"run_prevention_factor": 1.0142,
"strikeout_factor": 0.9861,
"walk_factor": 1.0585,
"homer_factor": 0.977,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663992",
"espn_id": 39856,
"player_name": "Richard Lovelady",
"team": "WSH",
"role": "pitcher",
"espn_rank": 159,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 159,
"gp_value": 25.0,
"gp_rank": 92,
"gs_value": 4.0,
"gs_rank": 166,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.1153,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 4.0,
"sv_rank": 27,
"hld_value": 4.0,
"hld_rank": 104,
"ip_value": 26.0,
"ip_rank": 261,
"h_value": 26.0,
"h_rank": 214,
"er_value": 9.0,
"er_rank": 314,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 23.0,
"k_rank": 286,
"k_per_9_value": 7.961539,
"k_per_9_rank": 29,
"whip_value": 1.7307,
"whip_rank": null,
"war_value": 0.6,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0085,
"home_runs_vs_away_pitcher": 1.0064,
"home_pitcher_quality_edge": 0.046
},
"score_before": {
"away_runs": 3.6786,
"home_runs": 2.1665
},
"score_after": {
"away_runs": 3.71,
"home_runs": 2.1804,
"home_win_probability": 0.3708
},
"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 WAS | 17-44 | 0.279 | 1.20 | 3.60 | -148 | cold | average | |
| Home SF | 12-48 | 0.200 | 1.40 | 4 | -158 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away WAS | 33-33 | 0.500 | 4 | 0.061 | True |
| Home SF | 26-39 | 0.400 | -49 | -0.754 | True |
| Signal | - | - | -0.815 | -0.965 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target WAS | - | - | 4 | - | - | - | - |
| Game target SF | - | - | 2 | - | - | - | - |
| Player finalized WAS | 51 | 12 | 8 | 0 | 8 | 6 | 12 |
| Player finalized SF | 54 | 15 | 9 | 0 | 8 | 3 | 10 |
| Player model fractional WAS | 50.83 | 12.21 | 8.14 | 1.95 | 6.80 | 5.73 | 11.76 |
| Player model fractional SF | 54.66 | 14.87 | 7.76 | 2.05 | 7.83 | 3.75 | 11.74 |
| Simulation box WAS | 35 | 9 | 4 | 2 | 4 | 3 | 5 |
| Simulation box SF | 31 | 4 | 2 | 1 | 2 | 1 | 6 |
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 WAS | Starter | Richard Lovelady | 4 | 2 | 6 | 4 | 1 | 4.78 | 1.69 | True |
| Away WAS | Middle Reliever | Brad Lord | 3 | 0 | 0 | 0 | 0 | 2.39 | 0.99 | True |
| Away WAS | Middle Reliever | Clayton Beeter | 2 | 0 | 0 | 0 | 0 | 3.93 | 1.42 | True |
| Home SF | Starter | Logan Webb | 6 | 4 | 4 | 6 | 3 | 3.96 | 1.23 | True |
| Home SF | Middle Reliever | Keaton Winn | 1.10 | 0 | 0 | 1 | 0 | 3.65 | 1.19 | True |
| Home SF | Middle Reliever | Caleb Kilian | 1 | 0 | 1 | 0 | 0 | 3.69 | 1.30 | True |
| Home SF | Middle Reliever | Erik Miller | 0.20 | 0 | 0 | 2 | 0 | 3.48 | 1.58 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | WAS | batter | 1B | Curtis Mead | better | 11 | 6 | 5 | 7 | 4 | predicted_RBI | 1.7700 | boost | better |
| away | WAS | pitcher | Middle Reliever | Brad Lord | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 1.6667 | boost | better |
| home | SF | batter | SS | Willy Adames | better | 11 | 7 | 4 | 8 | 3 | predicted_RBI | 1.3700 | boost | better |
| home | SF | batter | CF | Drew Gilbert | worse | 12 | 1 | 11 | 2 | 10 | predicted_AB | -1.3500 | deboost | worse |
| away | WAS | batter | C | Keibert Ruiz | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_H | 1.2100 | boost | better |
| home | SF | batter | RF | Jung Hoo Lee | worse | 9 | 2 | 7 | 3 | 6 | predicted_H | -1.1600 | deboost | worse |
| home | SF | batter | LF | Casey Schmitt | worse | 11 | 3 | 8 | 2 | 9 | predicted_H | -1.1000 | deboost | worse |
| away | WAS | pitcher | Starter | Richard Lovelady | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -1.0000 | deboost | worse |
| away | WAS | pitcher | Middle Reliever | Clayton Beeter | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 1.0000 | boost | better |
| home | SF | batter | DH | Rafael Devers | worse | 10 | 2 | 8 | 1 | 9 | predicted_H | -0.9800 | deboost | worse |
| away | WAS | batter | RF | James Wood | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_R | -0.9750 | deboost | worse |
| away | WAS | batter | SS | CJ Abrams | worse | 9 | 3 | 6 | 2 | 7 | predicted_H | -0.9600 | deboost | worse |
| away | WAS | batter | DH | Luis Garcia | deboosted | 8 | 3 | 5 | 4 | 4 | predicted_SO | -0.9390 | deboost | better |
| home | SF | batter | 1B | Bryce Eldridge | worse | 10 | 2 | 8 | 1 | 9 | predicted_H | -0.9100 | deboost | worse |
| away | WAS | batter | LF | Daylen Lile | better | 9 | 6 | 3 | 5 | 4 | predicted_HR | 0.8700 | boost | better |
| away | WAS | batter | CF | Dylan Crews | worse | 10 | 3 | 7 | 2 | 8 | predicted_2B | 0.8680 | boost | better |
| home | SF | batter | 3B | Matt Chapman | neutral | 10 | 5 | 5 | 5 | 5 | predicted_RBI | -0.8600 | deboost | worse |
| home | SF | batter | 2B | Luis Arraez | deboosted | 12 | 5 | 7 | 6 | 6 | predicted_2B | 0.8090 | boost | better |
| away | WAS | batter | 3B | Jorbit Vivas | worse | 9 | 3 | 6 | 4 | 5 | predicted_2B | 0.7820 | boost | better |
| away | WAS | batter | 2B | Nasim Nuñez | worse | 9 | 5 | 4 | 4 | 5 | predicted_RBI | 0.6700 | boost | better |
| home | SF | batter | C | Eric Haase | worse | 11 | 2 | 9 | 1 | 10 | predicted_H | -0.6500 | deboost | worse |
| home | SF | pitcher | Middle Reliever | Erik Miller | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | SF | pitcher | Middle Reliever | Keaton Winn | 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 | Richard Lovelady |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1667 |
| ESPN Rank | 159 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1667 |
| Avg Velo | 86.7326 |
| Avg Spin | 2408.1629 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 4 |
| Pre ER | 2 |
| Pre H | 4 |
| Pre BB | 1 |
| Pre SO | 6 |
| Season ERA | 3.1154 |
| Season WHIP | 1.7308 |
| Role Avg IP | 1.5830 |
| Recent Avg IP | 1.5830 |
| Last Start IP | 2 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "WAS",
"games": 72,
"wins": 34,
"losses": 38,
"win_pct": 0.4722,
"runs_scored": 359.0,
"runs_allowed": 367.0,
"run_differential": -8.0,
"run_differential_per_game": -0.1111,
"avg_runs_scored": 4.9861,
"avg_runs_allowed": 5.0972,
"offense_index": 1.1156,
"defense_index": 0.8769,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.8,
"avg_runs_allowed": 4.1,
"run_differential": 7.0
},
"available": true,
"quality_score": -0.0723
},
"opponent": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4267,
"runs_scored": 326.0,
"runs_allowed": 357.0,
"run_differential": -31.0,
"run_differential_per_game": -0.4133,
"avg_runs_scored": 4.3467,
"avg_runs_allowed": 4.76,
"offense_index": 0.9725,
"defense_index": 0.939,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.8,
"avg_runs_allowed": 6.2,
"run_differential": 6.0
},
"available": true,
"quality_score": -0.1132
},
"edges": {
"quality_edge": 0.0409,
"offense_edge": 0.1156,
"opponent_offense_edge": -0.0275,
"defense_strength": -0.1231,
"opponent_defense_weakness": 0.061,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.999,
"run_prevention": 1.0059,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663992",
"profile": {
"available": true,
"pitcher_id": "663992",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 100.0,
"k_percent": 18.9,
"bb_percent": 15.6,
"woba": 0.357,
"xwoba": 0.353,
"sweet_spot_percent": 30.8,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 29.5,
"avg_best_speed": 74.7427,
"avg_hyper_speed": 93.4871,
"whiff_percent": 24.4,
"swing_percent": 43.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.3552,
"command_and_miss": -0.6521,
"regression_edge": 0.1143,
"xwoba_edge": -1.1,
"barrel_edge": 0.4,
"hard_hit_edge": 1.3,
"whiff_edge": -0.2,
"bb_edge": -1.625,
"pitch_design_score": -0.1667
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663992",
"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": 86.73257270026996,
"release_spin_rate": 2408.1629257304953,
"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": 86.73257270026996,
"release_spin_rate": 2408.1629257304953,
"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.7326,
"release_spin_rate": 2408.1629,
"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.1667,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1911,
"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.1667,
"sample_weight": 0.45,
"run_prevention_factor": 1.0142,
"strikeout_factor": 0.9861,
"walk_factor": 1.0585,
"homer_factor": 0.977,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663992",
"espn_id": 39856,
"player_name": "Richard Lovelady",
"team": "WSH",
"role": "pitcher",
"espn_rank": 159,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 159,
"gp_value": 25.0,
"gp_rank": 92,
"gs_value": 4.0,
"gs_rank": 166,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.1153,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 4.0,
"sv_rank": 27,
"hld_value": 4.0,
"hld_rank": 104,
"ip_value": 26.0,
"ip_rank": 261,
"h_value": 26.0,
"h_rank": 214,
"er_value": 9.0,
"er_rank": 314,
"hr_value": 3.0,
"hr_rank": 219,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 23.0,
"k_rank": 286,
"k_per_9_value": 7.961539,
"k_per_9_rank": 29,
"whip_value": 1.7307,
"whip_rank": null,
"war_value": 0.6,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0064,
"adjusted": 1
},
"predicted_H": {
"original": 3.0,
"factor": 1.0064,
"adjusted": 3
},
"predicted_BB": {
"original": 3.0,
"factor": 1.0263,
"adjusted": 3
},
"predicted_HR": {
"original": 1.0,
"factor": 0.9897,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9937,
"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": 9.0,
"ER": 5,
"H": 10,
"BB": 7,
"SO": 6,
"HR": 2,
"ERA": 5.0,
"WHIP": 1.8888888888888888,
"K9": 6.0,
"HR9": 2.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-02T00:00:00"
}{
"available": true,
"pitcher_id": "663992",
"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": 86.73257270026996,
"release_spin_rate": 2408.1629257304953,
"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": 86.73257270026996,
"release_spin_rate": 2408.1629257304953,
"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.7326,
"release_spin_rate": 2408.1629,
"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.1667,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1911,
"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.134,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5066,
"prior_weight": 0.4934
},
"role": "pitcher",
"player_id": "663992",
"report_date": "20260608_W",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 3.0,
"R": 3.0,
"H": 5.0,
"BB": 5.0,
"SO": 3.0,
"HR": 1.0,
"BF": 25.0,
"Pitches": 93.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 1.0,
"BB": 1.0,
"SO": 0.6,
"HR": 0.2,
"BF": 5.0,
"Pitches": 18.6
},
"rates": {
"ERA": 6.2308,
"WHIP": 2.3077,
"ER_per_IP": 0.69231,
"H_per_IP": 1.15385,
"BB_per_IP": 1.15385,
"SO_per_IP": 0.69231,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 5.0,
"R": 5.0,
"H": 10.0,
"BB": 7.0,
"SO": 6.0,
"HR": 2.0,
"BF": 45.0,
"Pitches": 170.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 1.0,
"BB": 0.7,
"SO": 0.6,
"HR": 0.2,
"BF": 4.5,
"Pitches": 17.0
},
"rates": {
"ERA": 5.0,
"WHIP": 1.8889,
"ER_per_IP": 0.55556,
"H_per_IP": 1.11111,
"BB_per_IP": 0.77778,
"SO_per_IP": 0.66667,
"HR_per_IP": 0.22222
}
},
"season": {
"games": 25,
"totals": {
"IP": 26.0,
"ER": 9.0,
"R": 11.0,
"H": 26.0,
"BB": 19.0,
"SO": 23.0,
"HR": 3.0,
"BF": 122.0,
"Pitches": 453.0
},
"per_game": {
"IP": 1.0,
"ER": 0.36,
"R": 0.44,
"H": 1.04,
"BB": 0.76,
"SO": 0.92,
"HR": 0.12,
"BF": 4.88,
"Pitches": 18.12
},
"rates": {
"ERA": 3.1154,
"WHIP": 1.7308,
"ER_per_IP": 0.34615,
"H_per_IP": 1.0,
"BB_per_IP": 0.73077,
"SO_per_IP": 0.88462,
"HR_per_IP": 0.11538
}
}
},
"weighted_prediction": {
"predicted_IP": 3.0,
"predicted_ER": 1.578,
"predicted_H": 3.074,
"predicted_BB": 1.947,
"predicted_SO": 2.458,
"predicted_HR": 0.513,
"predicted_ERA": 4.7755,
"predicted_WHIP": 1.6886
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5585,
"form_weight": 0.4415,
"form_reliability": 0.5066,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.134,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5066,
"prior_weight": 0.4934
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 3.0,
"final": 4.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 1.578,
"final": 1.8137,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 3.074,
"final": 3.5911,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.947,
"final": 1.4181,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 2.458,
"final": 4.4361,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.513,
"final": 0.785,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.7755,
"final": 4.7755,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.6886,
"final": 1.6886,
"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 | Brad Lord |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0997 |
| ESPN Rank | 67 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0468 |
| Avg Velo | 90.5451 |
| Avg Spin | 2417.7885 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 3 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.4545 |
| Season WHIP | 0.9917 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "WAS",
"games": 72,
"wins": 34,
"losses": 38,
"win_pct": 0.4722,
"runs_scored": 359.0,
"runs_allowed": 367.0,
"run_differential": -8.0,
"run_differential_per_game": -0.1111,
"avg_runs_scored": 4.9861,
"avg_runs_allowed": 5.0972,
"offense_index": 1.1156,
"defense_index": 0.8769,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.8,
"avg_runs_allowed": 4.1,
"run_differential": 7.0
},
"available": true,
"quality_score": -0.0723
},
"opponent": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4267,
"runs_scored": 326.0,
"runs_allowed": 357.0,
"run_differential": -31.0,
"run_differential_per_game": -0.4133,
"avg_runs_scored": 4.3467,
"avg_runs_allowed": 4.76,
"offense_index": 0.9725,
"defense_index": 0.939,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.8,
"avg_runs_allowed": 6.2,
"run_differential": 6.0
},
"available": true,
"quality_score": -0.1132
},
"edges": {
"quality_edge": 0.0409,
"offense_edge": 0.1156,
"opponent_offense_edge": -0.0275,
"defense_strength": -0.1231,
"opponent_defense_weakness": 0.061,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.999,
"run_prevention": 1.0059,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "695418",
"profile": {
"available": true,
"pitcher_id": "695418",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 143.0,
"k_percent": 20.6,
"bb_percent": 6.1,
"woba": 0.252,
"xwoba": 0.297,
"sweet_spot_percent": 23.3,
"barrel_batted_rate": 5.2,
"hard_hit_percent": 43.1,
"avg_best_speed": 76.0493,
"avg_hyper_speed": 94.6591,
"whiff_percent": 23.0,
"swing_percent": 51.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.598,
"command_and_miss": -0.1379,
"regression_edge": -1.2857,
"xwoba_edge": 0.5,
"barrel_edge": 0.4222,
"hard_hit_edge": -0.6429,
"whiff_edge": -0.4,
"bb_edge": 0.75,
"pitch_design_score": 0.0468
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "695418",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 38,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 38,
"pitch_usage": 0.0,
"release_speed": 90.54507880169423,
"release_spin_rate": 2417.7885343088233,
"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": 38,
"pitch_usage": 0.0,
"release_speed": 90.54507880169423,
"release_spin_rate": 2417.7885343088233,
"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.5451,
"release_spin_rate": 2417.7885,
"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.0468,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.334,
"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.0997,
"sample_weight": 0.572,
"run_prevention_factor": 0.9915,
"strikeout_factor": 0.9833,
"walk_factor": 0.9657,
"homer_factor": 0.9868,
"woba_minus_xwoba": -0.045,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "695418",
"espn_id": 4866810,
"player_name": "Brad Lord",
"team": "WSH",
"role": "pitcher",
"espn_rank": 67,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 67,
"gp_value": 19.0,
"gp_rank": 164,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.4545,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 5.0,
"hld_rank": 77,
"ip_value": 40.1,
"ip_rank": 145,
"h_value": 30.0,
"h_rank": 176,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 10.0,
"bb_rank": 270,
"k_value": 34.0,
"k_rank": 170,
"k_per_9_value": 7.5867767,
"k_per_9_rank": 31,
"whip_value": 0.9917,
"whip_rank": null,
"war_value": 1.12,
"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.9804,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9924,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9904,
"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": 21.0,
"ER": 2,
"H": 12,
"BB": 6,
"SO": 21,
"HR": 1,
"ERA": 0.8571428571428573,
"WHIP": 0.8571428571428573,
"K9": 9.000000000000002,
"HR9": 0.42857142857142866,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "695418",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 38,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 38,
"pitch_usage": 0.0,
"release_speed": 90.54507880169423,
"release_spin_rate": 2417.7885343088233,
"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": 38,
"pitch_usage": 0.0,
"release_speed": 90.54507880169423,
"release_spin_rate": 2417.7885343088233,
"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.5451,
"release_spin_rate": 2417.7885,
"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.0468,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.334,
"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": 7.964,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6143,
"prior_weight": 0.3857
},
"role": "pitcher",
"player_id": "695418",
"report_date": "20260608_W",
"season_year": 2026,
"rows_used": 19,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 11.1,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 4.0,
"SO": 11.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 172.0
},
"per_game": {
"IP": 2.1,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.8,
"SO": 2.2,
"HR": 0.2,
"BF": 8.2,
"Pitches": 34.4
},
"rates": {
"ERA": 0.7941,
"WHIP": 0.6176,
"ER_per_IP": 0.08824,
"H_per_IP": 0.26471,
"BB_per_IP": 0.35294,
"SO_per_IP": 0.97059,
"HR_per_IP": 0.08824
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 21.0,
"ER": 2.0,
"R": 2.0,
"H": 12.0,
"BB": 6.0,
"SO": 21.0,
"HR": 1.0,
"BF": 83.0,
"Pitches": 343.0
},
"per_game": {
"IP": 2.0,
"ER": 0.2,
"R": 0.2,
"H": 1.2,
"BB": 0.6,
"SO": 2.1,
"HR": 0.1,
"BF": 8.3,
"Pitches": 34.3
},
"rates": {
"ERA": 0.8571,
"WHIP": 0.8571,
"ER_per_IP": 0.09524,
"H_per_IP": 0.57143,
"BB_per_IP": 0.28571,
"SO_per_IP": 1.0,
"HR_per_IP": 0.04762
}
},
"season": {
"games": 19,
"totals": {
"IP": 40.1,
"ER": 11.0,
"R": 12.0,
"H": 30.0,
"BB": 10.0,
"SO": 34.0,
"HR": 4.0,
"BF": 165.0,
"Pitches": 674.0
},
"per_game": {
"IP": 2.0,
"ER": 0.5789,
"R": 0.6316,
"H": 1.5789,
"BB": 0.5263,
"SO": 1.7895,
"HR": 0.2105,
"BF": 8.6842,
"Pitches": 35.4737
},
"rates": {
"ERA": 2.4545,
"WHIP": 0.9917,
"ER_per_IP": 0.27273,
"H_per_IP": 0.7438,
"BB_per_IP": 0.24793,
"SO_per_IP": 0.84298,
"HR_per_IP": 0.09917
}
}
},
"weighted_prediction": {
"predicted_IP": 2.0,
"predicted_ER": 0.487,
"predicted_H": 1.205,
"predicted_BB": 0.606,
"predicted_SO": 1.738,
"predicted_HR": 0.184,
"predicted_ERA": 2.3883,
"predicted_WHIP": 0.9867
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.513,
"form_weight": 0.487,
"form_reliability": 0.6143,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 7.964,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6143,
"prior_weight": 0.3857
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 2.0,
"final": 1.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.487,
"final": 0.2372,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.205,
"final": 0.5869,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.606,
"final": 0.2951,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.738,
"final": 0.8465,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.184,
"final": 0.0896,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.3883,
"final": 2.3883,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9867,
"final": 0.9867,
"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 | Clayton Beeter |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0690 |
| ESPN Rank | 192 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0908 |
| Avg Velo | 91.3315 |
| Avg Spin | 2553.3942 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 2 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 3.1765 |
| Season WHIP | 1.3529 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "WAS",
"games": 72,
"wins": 34,
"losses": 38,
"win_pct": 0.4722,
"runs_scored": 359.0,
"runs_allowed": 367.0,
"run_differential": -8.0,
"run_differential_per_game": -0.1111,
"avg_runs_scored": 4.9861,
"avg_runs_allowed": 5.0972,
"offense_index": 1.1156,
"defense_index": 0.8769,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.8,
"avg_runs_allowed": 4.1,
"run_differential": 7.0
},
"available": true,
"quality_score": -0.0723
},
"opponent": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4267,
"runs_scored": 326.0,
"runs_allowed": 357.0,
"run_differential": -31.0,
"run_differential_per_game": -0.4133,
"avg_runs_scored": 4.3467,
"avg_runs_allowed": 4.76,
"offense_index": 0.9725,
"defense_index": 0.939,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.8,
"avg_runs_allowed": 6.2,
"run_differential": 6.0
},
"available": true,
"quality_score": -0.1132
},
"edges": {
"quality_edge": 0.0409,
"offense_edge": 0.1156,
"opponent_offense_edge": -0.0275,
"defense_strength": -0.1231,
"opponent_defense_weakness": 0.061,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.999,
"run_prevention": 1.0059,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "690925",
"profile": {
"available": true,
"pitcher_id": "690925",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 55.0,
"k_percent": 24.3,
"bb_percent": 17.6,
"woba": 0.274,
"xwoba": 0.311,
"sweet_spot_percent": 21.4,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 47.6,
"avg_best_speed": 82.2879,
"avg_hyper_speed": 94.3985,
"whiff_percent": 25.2,
"swing_percent": 43.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.0715,
"command_and_miss": -0.365,
"regression_edge": -1.0571,
"xwoba_edge": 0.1,
"barrel_edge": -0.0444,
"hard_hit_edge": -1.2857,
"whiff_edge": -0.0857,
"bb_edge": -2.125,
"pitch_design_score": 0.0908
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "690925",
"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": 91.33150414149834,
"release_spin_rate": 2553.394245121494,
"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": 91.33150414149834,
"release_spin_rate": 2553.394245121494,
"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.3315,
"release_spin_rate": 2553.3942,
"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.0908,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6485,
"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.069,
"sample_weight": 0.45,
"run_prevention_factor": 1.0059,
"strikeout_factor": 1.0021,
"walk_factor": 1.0765,
"homer_factor": 1.0234,
"woba_minus_xwoba": -0.037,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "690925",
"espn_id": 4313143,
"player_name": "Clayton Beeter",
"team": "WSH",
"role": "pitcher",
"espn_rank": 192,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 192,
"gp_value": 16.0,
"gp_rank": 201,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.1764,
"era_rank": null,
"w_value": 1.0,
"w_rank": 260,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 4.0,
"sv_rank": 27,
"hld_value": 2.0,
"hld_rank": 158,
"ip_value": 17.0,
"ip_rank": 387,
"h_value": 10.0,
"h_rank": 459,
"er_value": 6.0,
"er_rank": 425,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 13.0,
"bb_rank": 201,
"k_value": 18.0,
"k_rank": 344,
"k_per_9_value": 9.529412,
"k_per_9_rank": 24,
"whip_value": 1.3529,
"whip_rank": null,
"war_value": 0.43,
"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.0344,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0105,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0009,
"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": 9,
"SO": 14,
"HR": 1,
"ERA": 3.483870967741936,
"WHIP": 1.6451612903225807,
"K9": 12.193548387096776,
"HR9": 0.870967741935484,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "690925",
"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": 91.33150414149834,
"release_spin_rate": 2553.394245121494,
"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": 91.33150414149834,
"release_spin_rate": 2553.394245121494,
"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.3315,
"release_spin_rate": 2553.3942,
"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.0908,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6485,
"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.357,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4017,
"prior_weight": 0.5983
},
"role": "pitcher",
"player_id": "690925",
"report_date": "20260608_W",
"season_year": 2026,
"rows_used": 16,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 4.0,
"SO": 7.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 94.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.8,
"SO": 1.4,
"HR": 0.0,
"BF": 4.8,
"Pitches": 18.8
},
"rates": {
"ERA": 3.1765,
"WHIP": 1.5882,
"ER_per_IP": 0.35294,
"H_per_IP": 0.88235,
"BB_per_IP": 0.70588,
"SO_per_IP": 1.23529,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 4.0,
"R": 4.0,
"H": 8.0,
"BB": 9.0,
"SO": 14.0,
"HR": 1.0,
"BF": 48.0,
"Pitches": 197.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.9,
"SO": 1.4,
"HR": 0.1,
"BF": 4.8,
"Pitches": 19.7
},
"rates": {
"ERA": 3.4839,
"WHIP": 1.6452,
"ER_per_IP": 0.3871,
"H_per_IP": 0.77419,
"BB_per_IP": 0.87097,
"SO_per_IP": 1.35484,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 16,
"totals": {
"IP": 17.0,
"ER": 6.0,
"R": 6.0,
"H": 10.0,
"BB": 13.0,
"SO": 18.0,
"HR": 2.0,
"BF": 74.0,
"Pitches": 295.0
},
"per_game": {
"IP": 1.0,
"ER": 0.375,
"R": 0.375,
"H": 0.625,
"BB": 0.8125,
"SO": 1.125,
"HR": 0.125,
"BF": 4.625,
"Pitches": 18.4375
},
"rates": {
"ERA": 3.1765,
"WHIP": 1.3529,
"ER_per_IP": 0.35294,
"H_per_IP": 0.58824,
"BB_per_IP": 0.76471,
"SO_per_IP": 1.05882,
"HR_per_IP": 0.11765
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.437,
"predicted_H": 0.888,
"predicted_BB": 0.53,
"predicted_SO": 1.058,
"predicted_HR": 0.106,
"predicted_ERA": 3.9298,
"predicted_WHIP": 1.418
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6028,
"form_weight": 0.3972,
"form_reliability": 0.4017,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.357,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4017,
"prior_weight": 0.5983
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.437,
"final": 0.1736,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.888,
"final": 0.3527,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.53,
"final": 0.2105,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.058,
"final": 0.4203,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.106,
"final": 0.0421,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9298,
"final": 3.9298,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.418,
"final": 1.418,
"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.184 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.013 | 0.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 3.537 | 4.000 | 4.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.252 | 0.250 | 0.250 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.394 | 1.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.891 | 1.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.162 | 0.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.327 | 0.400 | 0.250 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.484 | 0.000 | 0.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.546 | 0.000 | 1.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.449 | 0.250 | 0.250 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.939 | 0.000 | 1.000 | Hitting_SO | - | - | - | - |
| 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.3940 -> 1.0000 (boost 0.6060, better) |
| Biggest Deboost | predicted_SO: 0.9390 -> 0.0000 (deboost -0.9390, 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.5370 -> 3.5890 (boost 0.0520, better) | predicted_SLG: 0.4490 -> 0.4426 (deboost -0.0064, 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.4426 -> 0.4485 (boost 0.0059, 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.5529 -> 1.0000 (boost 0.4471, better) | predicted_BB: 0.3811 -> 0.0000 (deboost -0.3811, worse) | AB rounded to 4 (raw=3.59), rates preserved: AVG=0.255 HR/AB=0.045 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4977 -> 0.0000 (deboost -0.4977, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4485 -> 0.2500 (deboost -0.1985, 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.4485 (boost 0.1985, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677651",
"player_name": "Luis Garcia",
"position": "DH",
"team": "WAS",
"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.184,
"predicted_3B": 0.013,
"predicted_AB": 3.537,
"predicted_AVG": 0.252,
"predicted_BB": 0.394,
"predicted_H": 0.891,
"predicted_HR": 0.162,
"predicted_OBP": 0.327,
"predicted_R": 0.484,
"predicted_RBI": 0.546,
"predicted_SLG": 0.449,
"predicted_SO": 0.939
},
"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.1848,
"predicted_3B": 0.0133,
"predicted_AB": 3.589,
"predicted_AVG": 0.2517,
"predicted_BB": 0.3789,
"predicted_H": 0.903,
"predicted_HBP": 0.035,
"predicted_HR": 0.1571,
"predicted_OBP": 0.3249,
"predicted_R": 0.486,
"predicted_RBI": 0.5399,
"predicted_SLG": 0.4426,
"predicted_SO": 0.9255
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.184,
"after": 0.1848,
"delta": 0.0008,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.013,
"after": 0.0133,
"delta": 0.0003,
"percent_delta": 0.0231,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.537,
"after": 3.589,
"delta": 0.052,
"percent_delta": 0.0147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2517,
"delta": -0.0003,
"percent_delta": -0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.394,
"after": 0.3789,
"delta": -0.0151,
"percent_delta": -0.0383,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.891,
"after": 0.903,
"delta": 0.012,
"percent_delta": 0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.162,
"after": 0.1571,
"delta": -0.0049,
"percent_delta": -0.0302,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3249,
"delta": -0.0021,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.484,
"after": 0.486,
"delta": 0.002,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.546,
"after": 0.5399,
"delta": -0.0061,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.449,
"after": 0.4426,
"delta": -0.0064,
"percent_delta": -0.0143,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.939,
"after": 0.9255,
"delta": -0.0135,
"percent_delta": -0.0144,
"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.537,
"after": 3.589,
"delta": 0.052,
"percent_delta": 0.0147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.449,
"after": 0.4426,
"delta": -0.0064,
"percent_delta": -0.0143,
"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": 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.1848,
"predicted_3B": 0.0133,
"predicted_AB": 3.589,
"predicted_AVG": 0.2554,
"predicted_BB": 0.3811,
"predicted_H": 0.9166,
"predicted_HBP": 0.035,
"predicted_HR": 0.1606,
"predicted_OBP": 0.3269,
"predicted_R": 0.4977,
"predicted_RBI": 0.5529,
"predicted_SLG": 0.4485,
"predicted_SO": 0.92
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1848,
"after": 0.1848,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0133,
"after": 0.0133,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.589,
"after": 3.589,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2517,
"after": 0.2554,
"delta": 0.0037,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3789,
"after": 0.3811,
"delta": 0.0022,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.903,
"after": 0.9166,
"delta": 0.0136,
"percent_delta": 0.0151,
"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.1571,
"after": 0.1606,
"delta": 0.0035,
"percent_delta": 0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3249,
"after": 0.3269,
"delta": 0.002,
"percent_delta": 0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.486,
"after": 0.4977,
"delta": 0.0117,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5399,
"after": 0.5529,
"delta": 0.013,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4426,
"after": 0.4485,
"delta": 0.0059,
"percent_delta": 0.0133,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9255,
"after": 0.92,
"delta": -0.0055,
"percent_delta": -0.0059,
"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.4426,
"after": 0.4485,
"delta": 0.0059,
"percent_delta": 0.0133,
"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.59), rates preserved: AVG=0.255 HR/AB=0.045",
"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.1848,
"after": 0.0,
"delta": -0.1848,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0133,
"after": 0.0,
"delta": -0.0133,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.589,
"after": 4.0,
"delta": 0.411,
"percent_delta": 0.1145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3811,
"after": 0.0,
"delta": -0.3811,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9166,
"after": 1.0,
"delta": 0.0834,
"percent_delta": 0.091,
"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.1606,
"after": 0.0,
"delta": -0.1606,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5529,
"after": 1.0,
"delta": 0.4471,
"percent_delta": 0.8086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.92,
"after": 1.0,
"delta": 0.08,
"percent_delta": 0.087,
"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.5529,
"after": 1.0,
"delta": 0.4471,
"percent_delta": 0.8086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3811,
"after": 0.0,
"delta": -0.3811,
"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.4977,
"after": 0.0,
"delta": -0.4977,
"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.4977,
"after": 0.0,
"delta": -0.4977,
"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.2554,
"after": 0.25,
"delta": -0.0054,
"percent_delta": -0.0211,
"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.3269,
"after": 0.25,
"delta": -0.0769,
"percent_delta": -0.2352,
"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.4485,
"after": 0.25,
"delta": -0.1985,
"percent_delta": -0.4426,
"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.4485,
"after": 0.25,
"delta": -0.1985,
"percent_delta": -0.4426,
"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": 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": 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": 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.2554,
"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.3269,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4485,
"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.2554,
"delta": 0.0054,
"percent_delta": 0.0216,
"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.3269,
"delta": 0.0769,
"percent_delta": 0.3075,
"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.4485,
"delta": 0.1985,
"percent_delta": 0.794,
"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.4485,
"delta": 0.1985,
"percent_delta": 0.794,
"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.184,
"after": 0.0,
"delta": -0.184,
"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.537,
"after": 4.0,
"delta": 0.463,
"percent_delta": 0.1309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2554,
"delta": 0.0034,
"percent_delta": 0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.394,
"after": 1.0,
"delta": 0.606,
"percent_delta": 1.5381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.891,
"after": 1.0,
"delta": 0.109,
"percent_delta": 0.1223,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.162,
"after": 0.0,
"delta": -0.162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3269,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.484,
"after": 0.0,
"delta": -0.484,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.546,
"after": 0.0,
"delta": -0.546,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.449,
"after": 0.4485,
"delta": -0.0005,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.939,
"after": 0.0,
"delta": -0.939,
"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_BB",
"before": 0.394,
"after": 1.0,
"delta": 0.606,
"percent_delta": 1.5381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.939,
"after": 0.0,
"delta": -0.939,
"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.184 | - |
| predicted_3B | 0.013 | - |
| predicted_AB | 3.537 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.394 | - |
| predicted_H | 0.891 | - |
| predicted_HR | 0.162 | - |
| predicted_OBP | 0.327 | - |
| predicted_R | 0.484 | - |
| predicted_RBI | 0.546 | - |
| predicted_SLG | 0.449 | - |
| predicted_SO | 0.939 | - |
Final model 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.185 | 0.001 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.589 | 0.052 |
| predicted_AVG | 0.252 | -0.000 |
| predicted_BB | 0.379 | -0.015 |
| predicted_H | 0.903 | 0.012 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.157 | -0.005 |
| predicted_OBP | 0.325 | -0.002 |
| predicted_R | 0.486 | 0.002 |
| predicted_RBI | 0.540 | -0.006 |
| predicted_SLG | 0.443 | -0.006 |
| predicted_SO | 0.925 | -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.185 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.589 | 0.000 |
| predicted_AVG | 0.255 | 0.004 |
| predicted_BB | 0.381 | 0.002 |
| predicted_H | 0.917 | 0.014 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.161 | 0.004 |
| predicted_OBP | 0.327 | 0.002 |
| predicted_R | 0.498 | 0.012 |
| predicted_RBI | 0.553 | 0.013 |
| predicted_SLG | 0.449 | 0.006 |
| predicted_SO | 0.920 | -0.005 |
AB rounded to 4 (raw=3.59), rates preserved: AVG=0.255 HR/AB=0.045
| 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.185 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 4.000 | 0.411 |
| predicted_AVG | 0.250 | -0.005 |
| predicted_BB | 0.000 | -0.381 |
| predicted_H | 1.000 | 0.083 |
| predicted_HR | 0.000 | -0.161 |
| predicted_OBP | 0.250 | -0.077 |
| predicted_R | 0.000 | -0.498 |
| predicted_RBI | 1.000 | 0.447 |
| predicted_SLG | 0.250 | -0.199 |
| predicted_SO | 1.000 | 0.080 |
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 | 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 | 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.8670 |
| predicted_AVG | 0.2502 |
| predicted_BB | 0.2980 |
| predicted_H | 0.9670 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1310 |
| predicted_OBP | 0.3134 |
| predicted_R | 0.4970 |
| predicted_RBI | 0.5070 |
| predicted_SLG | 0.4085 |
| predicted_SO | 0.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1840 | 0.1890 | 0.1848 | model_form_blend |
| predicted_3B | 0.0130 | 0.0150 | 0.0133 | model_form_blend |
| predicted_AB | 3.5370 | 3.8670 | 3.5890 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2502 | 0.2517 | model_form_blend |
| predicted_BB | 0.3940 | 0.2980 | 0.3789 | model_form_blend |
| predicted_H | 0.8910 | 0.9670 | 0.9030 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1620 | 0.1310 | 0.1571 | model_form_blend |
| predicted_OBP | 0.3270 | 0.3134 | 0.3249 | model_form_blend |
| predicted_R | 0.4840 | 0.4970 | 0.4860 | model_form_blend |
| predicted_RBI | 0.5460 | 0.5070 | 0.5399 | model_form_blend |
| predicted_SLG | 0.4490 | 0.4085 | 0.4426 | model_form_blend |
| predicted_SO | 0.9390 | 0.8530 | 0.9255 | 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 | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| 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.222 | 0.000 | 0.000 | Hitting_2B | 0.222 | 1.000 | -0.222 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.327 | 4.000 | 5.000 | Hitting_AB | 3.327 | 4.000 | 0.673 | 0.000 |
| predicted_AVG | 0.244 | 0.250 | 0.200 | Hitting_AVG | 0.257 | 0.250 | -0.007 | 0.000 |
| predicted_BB | 0.549 | 1.000 | 1.000 | Hitting_BB | 0.549 | 0.000 | 0.451 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.065 | 0.000 | -0.065 | 0.000 |
| predicted_H | 0.330 | 1.000 | 1.000 | Hitting_H | 0.856 | 1.000 | 0.144 | 0.000 |
| predicted_HR | 0.070 | 1.000 | 0.000 | Hitting_HR | 0.222 | 0.000 | 0.778 | 1.000 |
| predicted_OBP | 0.314 | 0.400 | 0.333 | Hitting_OBP | 0.374 | 0.250 | 0.026 | 0.150 |
| predicted_R | 0.667 | 1.000 | 1.000 | Hitting_R | 0.667 | 0.000 | 0.333 | 1.000 |
| predicted_RBI | 0.230 | 2.000 | 1.000 | Hitting_RBI | 0.601 | 0.000 | 1.399 | 2.000 |
| predicted_SLG | 0.446 | 1.000 | 0.200 | Hitting_SLG | 0.525 | 0.500 | 0.475 | 0.500 |
| predicted_SO | 0.680 | 0.000 | 1.000 | Hitting_SO | 0.680 | 2.000 | -0.680 | -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_RBI: 0.2300 -> 2.0000 (boost 1.7700, better) |
| Biggest Deboost | predicted_SO: 0.6800 -> 0.0000 (deboost -0.6800, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.3270 -> 5.0341 (boost 1.7071, 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.4704 -> 0.4063 (deboost -0.0641, 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.6965 -> 1.0000 (boost 0.3035, better) | predicted_2B: 0.3210 -> 0.0000 (deboost -0.3210, worse) | AB rounded to 5 (raw=5.03), rates preserved: AVG=0.200 HR/AB=0.047 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3051 -> 0.3330 (boost 0.0279, better) | predicted_SLG: 0.4063 -> 0.2000 (deboost -0.2063, 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: 5.0000 -> 4.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.2000 -> 0.4063 (boost 0.2063, better) | predicted_OBP: 0.3330 -> 0.3051 (deboost -0.0279, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678554",
"player_name": "Curtis Mead",
"position": "1B",
"team": "WAS",
"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.327,
"predicted_AVG": 0.244,
"predicted_BB": 0.549,
"predicted_H": 0.33,
"predicted_HR": 0.07,
"predicted_OBP": 0.314,
"predicted_R": 0.667,
"predicted_RBI": 0.23,
"predicted_SLG": 0.446,
"predicted_SO": 0.68
},
"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.321,
"predicted_3B": 0.0004,
"predicted_AB": 5.0341,
"predicted_AVG": 0.2491,
"predicted_BB": 0.7544,
"predicted_H": 0.9938,
"predicted_HBP": 0.093,
"predicted_HR": 0.2331,
"predicted_OBP": 0.3316,
"predicted_R": 0.9775,
"predicted_RBI": 0.6801,
"predicted_SLG": 0.4704,
"predicted_SO": 1.1245
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.222,
"after": 0.321,
"delta": 0.099,
"percent_delta": 0.4459,
"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": 3.327,
"after": 5.0341,
"delta": 1.7071,
"percent_delta": 0.5131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2491,
"delta": 0.0051,
"percent_delta": 0.0209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.549,
"after": 0.7544,
"delta": 0.2054,
"percent_delta": 0.3741,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.33,
"after": 0.9938,
"delta": 0.6638,
"percent_delta": 2.0115,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.2331,
"delta": 0.1631,
"percent_delta": 2.33,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3316,
"delta": 0.0176,
"percent_delta": 0.0561,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.9775,
"delta": 0.3105,
"percent_delta": 0.4655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.23,
"after": 0.6801,
"delta": 0.4501,
"percent_delta": 1.957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.446,
"after": 0.4704,
"delta": 0.0244,
"percent_delta": 0.0547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.68,
"after": 1.1245,
"delta": 0.4445,
"percent_delta": 0.6537,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.327,
"after": 5.0341,
"delta": 1.7071,
"percent_delta": 0.5131,
"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.321,
"predicted_3B": 0.0004,
"predicted_AB": 5.0341,
"predicted_AVG": 0.2004,
"predicted_BB": 0.7589,
"predicted_H": 1.0088,
"predicted_HBP": 0.093,
"predicted_HR": 0.2382,
"predicted_OBP": 0.3051,
"predicted_R": 1.0011,
"predicted_RBI": 0.6965,
"predicted_SLG": 0.4063,
"predicted_SO": 1.1179
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.321,
"after": 0.321,
"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": 5.0341,
"after": 5.0341,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2491,
"after": 0.2004,
"delta": -0.0487,
"percent_delta": -0.1955,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7544,
"after": 0.7589,
"delta": 0.0045,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9938,
"after": 1.0088,
"delta": 0.015,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.093,
"after": 0.093,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2331,
"after": 0.2382,
"delta": 0.0051,
"percent_delta": 0.0219,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3316,
"after": 0.3051,
"delta": -0.0265,
"percent_delta": -0.0799,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9775,
"after": 1.0011,
"delta": 0.0236,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6801,
"after": 0.6965,
"delta": 0.0164,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4704,
"after": 0.4063,
"delta": -0.0641,
"percent_delta": -0.1363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1245,
"after": 1.1179,
"delta": -0.0066,
"percent_delta": -0.0059,
"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.4704,
"after": 0.4063,
"delta": -0.0641,
"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 5 (raw=5.03), rates preserved: AVG=0.200 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.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.321,
"after": 0.0,
"delta": -0.321,
"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": 5.0341,
"after": 5.0,
"delta": -0.0341,
"percent_delta": -0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7589,
"after": 1.0,
"delta": 0.2411,
"percent_delta": 0.3177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0088,
"after": 1.0,
"delta": -0.0088,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.093,
"after": 0.0,
"delta": -0.093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2382,
"after": 0.0,
"delta": -0.2382,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6965,
"after": 1.0,
"delta": 0.3035,
"percent_delta": 0.4358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1179,
"after": 1.0,
"delta": -0.1179,
"percent_delta": -0.1055,
"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.6965,
"after": 1.0,
"delta": 0.3035,
"percent_delta": 0.4358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.321,
"after": 0.0,
"delta": -0.321,
"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": 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": 5.0,
"after": 5.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": 1.0011,
"after": 1.0,
"delta": -0.0011,
"percent_delta": -0.0011,
"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_SO",
"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": 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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.2004,
"after": 0.2,
"delta": -0.0004,
"percent_delta": -0.002,
"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.3051,
"after": 0.333,
"delta": 0.0279,
"percent_delta": 0.0914,
"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.4063,
"after": 0.2,
"delta": -0.2063,
"percent_delta": -0.5078,
"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.3051,
"after": 0.333,
"delta": 0.0279,
"percent_delta": 0.0914,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4063,
"after": 0.2,
"delta": -0.2063,
"percent_delta": -0.5078,
"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": 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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"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": 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.2004,
"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.3051,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4063,
"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.2004,
"delta": 0.0004,
"percent_delta": 0.002,
"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.333,
"after": 0.3051,
"delta": -0.0279,
"percent_delta": -0.0837,
"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.2,
"after": 0.4063,
"delta": 0.2063,
"percent_delta": 1.0314,
"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.2,
"after": 0.4063,
"delta": 0.2063,
"percent_delta": 1.0314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3051,
"delta": -0.0279,
"percent_delta": -0.0837,
"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.327,
"after": 4.0,
"delta": 0.673,
"percent_delta": 0.2023,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2004,
"delta": -0.0436,
"percent_delta": -0.1787,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.549,
"after": 1.0,
"delta": 0.451,
"percent_delta": 0.8215,
"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.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.3051,
"delta": -0.0089,
"percent_delta": -0.0283,
"direction": "deboost",
"projection_effect": "worse",
"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.23,
"after": 2.0,
"delta": 1.77,
"percent_delta": 7.6957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.446,
"after": 0.4063,
"delta": -0.0397,
"percent_delta": -0.089,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.68,
"after": 0.0,
"delta": -0.68,
"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_RBI",
"before": 0.23,
"after": 2.0,
"delta": 1.77,
"percent_delta": 7.6957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.68,
"after": 0.0,
"delta": -0.68,
"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.222 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.327 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.549 | - |
| predicted_H | 0.330 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.667 | - |
| predicted_RBI | 0.230 | - |
| predicted_SLG | 0.446 | - |
| predicted_SO | 0.680 | - |
Final model 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.321 | 0.099 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.034 | 1.707 |
| predicted_AVG | 0.249 | 0.005 |
| predicted_BB | 0.754 | 0.205 |
| predicted_H | 0.994 | 0.664 |
| predicted_HBP | 0.093 | - |
| predicted_HR | 0.233 | 0.163 |
| predicted_OBP | 0.332 | 0.018 |
| predicted_R | 0.978 | 0.310 |
| predicted_RBI | 0.680 | 0.450 |
| predicted_SLG | 0.470 | 0.024 |
| predicted_SO | 1.125 | 0.445 |
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.321 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.034 | 0.000 |
| predicted_AVG | 0.200 | -0.049 |
| predicted_BB | 0.759 | 0.005 |
| predicted_H | 1.009 | 0.015 |
| predicted_HBP | 0.093 | 0.000 |
| predicted_HR | 0.238 | 0.005 |
| predicted_OBP | 0.305 | -0.027 |
| predicted_R | 1.001 | 0.024 |
| predicted_RBI | 0.697 | 0.016 |
| predicted_SLG | 0.406 | -0.064 |
| predicted_SO | 1.118 | -0.007 |
AB rounded to 5 (raw=5.03), rates preserved: AVG=0.200 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.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 | 5.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.321 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.034 |
| predicted_AVG | 0.200 | -0.000 |
| predicted_BB | 1.000 | 0.241 |
| predicted_H | 1.000 | -0.009 |
| predicted_HR | 0.000 | -0.238 |
| predicted_OBP | 0.333 | 0.028 |
| predicted_R | 1.000 | -0.001 |
| predicted_RBI | 1.000 | 0.303 |
| predicted_SLG | 0.200 | -0.206 |
| 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 | 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 | 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 | - | 18.000 | 4.000 | 1.000 | 0.000 | 1.000 | 2.000 | 3.000 | 2.000 | 5.000 | 0.2222 | 0.3000 | 0.4444 | 0.2222 | 0.0556 | 0.1111 | 0.1111 | 0.2778 |
| last_10 | 0.20 | 10 | - | 35.000 | 10.000 | 2.000 | 0.000 | 2.000 | 8.000 | 7.000 | 4.000 | 10.000 | 0.2857 | 0.3590 | 0.5143 | 0.2857 | 0.0571 | 0.2286 | 0.1143 | 0.2857 |
| season | 0.60 | 51 | - | 509.000 | 131.000 | 34.000 | 0.000 | 34.000 | 92.000 | 102.000 | 84.000 | 104.000 | 0.2574 | 0.3742 | 0.5246 | 0.2574 | 0.0668 | 0.1807 | 0.1650 | 0.2043 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4490 |
| predicted_3B | 0.0010 |
| predicted_AB | 7.2410 |
| predicted_AVG | 0.2557 |
| predicted_BB | 1.0200 |
| predicted_H | 1.8520 |
| predicted_HBP | 0.0930 |
| predicted_HR | 0.4440 |
| predicted_OBP | 0.3543 |
| predicted_R | 1.3790 |
| predicted_RBI | 1.2620 |
| predicted_SLG | 0.5019 |
| predicted_SO | 1.6990 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2220 | 0.4490 | 0.3210 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.3270 | 7.2410 | 5.0341 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2557 | 0.2491 | model_form_blend |
| predicted_BB | 0.5490 | 1.0200 | 0.7544 | model_form_blend |
| predicted_H | 0.3300 | 1.8520 | 0.9938 | model_form_blend |
| predicted_HBP | - | 0.0930 | 0.0930 | form_only |
| predicted_HR | 0.0700 | 0.4440 | 0.2331 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3543 | 0.3316 | model_form_blend |
| predicted_R | 0.6670 | 1.3790 | 0.9775 | model_form_blend |
| predicted_RBI | 0.2300 | 1.2620 | 0.6801 | model_form_blend |
| predicted_SLG | 0.4460 | 0.5019 | 0.4704 | model_form_blend |
| predicted_SO | 0.6800 | 1.6990 | 1.1245 | 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 | 153 |
| 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 | 1 |
| R | 1 |
| RBI | 2 |
| 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 | 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 | 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 | 20260607_WAS@ARI |
| game_type | full |
| mlbID | 678554 |
| playerID | 678554 |
| playerName | Curtis Mead |
| pos | 1B |
| started | True |
| startingPosition | 3B |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-07 |
| sl_k_percent | 17.8 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.371 |
| sl_xwoba | 0.375 |
| sl_xba | 0.27 |
| sl_xslg | 0.481 |
| sl_sweet_spot_percent | 37.7 |
| sl_barrel_batted_rate | 10.7 |
| sl_hard_hit_percent | 45.9 |
| sl_exit_velocity_avg | 89.5 |
| sl_launch_angle_avg | 15.4 |
| sl_whiff_percent | 16.3 |
| 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.255 | 0.000 | 0.000 | Hitting_2B | 0.255 | 0.000 | -0.255 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 4.114 | 4.000 | 7.000 | Hitting_AB | 4.114 | 3.000 | -0.114 | 1.000 |
| predicted_AVG | 0.239 | 0.250 | 0.286 | Hitting_AVG | 0.255 | 0.000 | -0.005 | 0.250 |
| predicted_BB | 0.349 | 0.000 | 1.000 | Hitting_BB | 0.349 | 0.000 | -0.349 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.047 | 0.000 | -0.047 | 0.000 |
| predicted_H | 0.960 | 1.000 | 2.000 | Hitting_H | 1.047 | 0.000 | -0.047 | 1.000 |
| predicted_HR | 0.130 | 1.000 | 0.000 | Hitting_HR | 0.129 | 0.000 | 0.871 | 1.000 |
| predicted_OBP | 0.308 | 0.250 | 0.375 | Hitting_OBP | 0.311 | 0.000 | -0.061 | 0.250 |
| predicted_R | 0.647 | 1.000 | 1.000 | Hitting_R | 0.647 | 0.000 | 0.353 | 1.000 |
| predicted_RBI | 0.450 | 1.000 | 1.000 | Hitting_RBI | 0.498 | 0.000 | 0.502 | 1.000 |
| predicted_SLG | 0.397 | 1.000 | 0.286 | Hitting_SLG | 0.418 | 0.000 | 0.582 | 1.000 |
| predicted_SO | 0.851 | 1.000 | 1.000 | Hitting_SO | 0.851 | 2.000 | 0.149 | -1.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_HR: 0.1300 -> 1.0000 (boost 0.8700, better) |
| Biggest Deboost | predicted_BB: 0.3490 -> 0.0000 (deboost -0.3490, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 4.1140 -> 7.1781 (boost 3.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 | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.3994 -> 0.4070 (boost 0.0076, 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_BB: 0.5990 -> 1.0000 (boost 0.4010, better) | predicted_SO: 1.4554 -> 1.0000 (deboost -0.4554, better) | AB rounded to 7 (raw=7.18), rates preserved: AVG=0.253 HR/AB=0.034 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1512 -> 1.0000 (deboost -0.1512, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3106 -> 0.3750 (boost 0.0644, better) | predicted_SLG: 0.4070 -> 0.2860 (deboost -0.1210, 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_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4070 (boost 0.1210, better) | predicted_OBP: 0.3750 -> 0.3106 (deboost -0.0644, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695734",
"player_name": "Daylen Lile",
"position": "LF",
"team": "WAS",
"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.255,
"predicted_3B": 0.016,
"predicted_AB": 4.114,
"predicted_AVG": 0.239,
"predicted_BB": 0.349,
"predicted_H": 0.96,
"predicted_HR": 0.13,
"predicted_OBP": 0.308,
"predicted_R": 0.647,
"predicted_RBI": 0.45,
"predicted_SLG": 0.397,
"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.3254,
"predicted_3B": 0.0204,
"predicted_AB": 7.1781,
"predicted_AVG": 0.2468,
"predicted_BB": 0.5955,
"predicted_H": 1.7894,
"predicted_HBP": 0.027,
"predicted_HR": 0.2411,
"predicted_OBP": 0.3092,
"predicted_R": 1.1241,
"predicted_RBI": 0.8107,
"predicted_SLG": 0.3994,
"predicted_SO": 1.464
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.255,
"after": 0.3254,
"delta": 0.0704,
"percent_delta": 0.2761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0204,
"delta": 0.0044,
"percent_delta": 0.275,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.114,
"after": 7.1781,
"delta": 3.0641,
"percent_delta": 0.7448,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2468,
"delta": 0.0078,
"percent_delta": 0.0326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.349,
"after": 0.5955,
"delta": 0.2465,
"percent_delta": 0.7063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.7894,
"delta": 0.8294,
"percent_delta": 0.864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2411,
"delta": 0.1111,
"percent_delta": 0.8546,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3092,
"delta": 0.0012,
"percent_delta": 0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.647,
"after": 1.1241,
"delta": 0.4771,
"percent_delta": 0.7374,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.8107,
"delta": 0.3607,
"percent_delta": 0.8016,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.397,
"after": 0.3994,
"delta": 0.0024,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.851,
"after": 1.464,
"delta": 0.613,
"percent_delta": 0.7203,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.114,
"after": 7.1781,
"delta": 3.0641,
"percent_delta": 0.7448,
"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.3254,
"predicted_3B": 0.0204,
"predicted_AB": 7.1781,
"predicted_AVG": 0.2531,
"predicted_BB": 0.599,
"predicted_H": 1.8164,
"predicted_HBP": 0.027,
"predicted_HR": 0.2464,
"predicted_OBP": 0.3106,
"predicted_R": 1.1512,
"predicted_RBI": 0.8302,
"predicted_SLG": 0.407,
"predicted_SO": 1.4554
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3254,
"after": 0.3254,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0204,
"after": 0.0204,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1781,
"after": 7.1781,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2468,
"after": 0.2531,
"delta": 0.0063,
"percent_delta": 0.0255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5955,
"after": 0.599,
"delta": 0.0035,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7894,
"after": 1.8164,
"delta": 0.027,
"percent_delta": 0.0151,
"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.2411,
"after": 0.2464,
"delta": 0.0053,
"percent_delta": 0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3092,
"after": 0.3106,
"delta": 0.0014,
"percent_delta": 0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.1241,
"after": 1.1512,
"delta": 0.0271,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8107,
"after": 0.8302,
"delta": 0.0195,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3994,
"after": 0.407,
"delta": 0.0076,
"percent_delta": 0.019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.464,
"after": 1.4554,
"delta": -0.0086,
"percent_delta": -0.0059,
"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.3994,
"after": 0.407,
"delta": 0.0076,
"percent_delta": 0.019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.18), rates preserved: AVG=0.253 HR/AB=0.034",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.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.3254,
"after": 0.0,
"delta": -0.3254,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0204,
"after": 0.0,
"delta": -0.0204,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1781,
"after": 7.0,
"delta": -0.1781,
"percent_delta": -0.0248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.599,
"after": 1.0,
"delta": 0.401,
"percent_delta": 0.6694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8164,
"after": 2.0,
"delta": 0.1836,
"percent_delta": 0.1011,
"direction": "boost",
"projection_effect": "better",
"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.2464,
"after": 0.0,
"delta": -0.2464,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8302,
"after": 1.0,
"delta": 0.1698,
"percent_delta": 0.2045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4554,
"after": 1.0,
"delta": -0.4554,
"percent_delta": -0.3129,
"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_BB",
"before": 0.599,
"after": 1.0,
"delta": 0.401,
"percent_delta": 0.6694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4554,
"after": 1.0,
"delta": -0.4554,
"percent_delta": -0.3129,
"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": 7.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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 1.1512,
"after": 1.0,
"delta": -0.1512,
"percent_delta": -0.1313,
"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": 1.1512,
"after": 1.0,
"delta": -0.1512,
"percent_delta": -0.1313,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2531,
"after": 0.286,
"delta": 0.0329,
"percent_delta": 0.13,
"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": 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_OBP",
"before": 0.3106,
"after": 0.375,
"delta": 0.0644,
"percent_delta": 0.2073,
"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.407,
"after": 0.286,
"delta": -0.121,
"percent_delta": -0.2973,
"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.3106,
"after": 0.375,
"delta": 0.0644,
"percent_delta": 0.2073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.286,
"delta": -0.121,
"percent_delta": -0.2973,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 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_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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2531,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3106,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.407,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.286,
"after": 0.2531,
"delta": -0.0329,
"percent_delta": -0.1152,
"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.375,
"after": 0.3106,
"delta": -0.0644,
"percent_delta": -0.1718,
"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.286,
"after": 0.407,
"delta": 0.121,
"percent_delta": 0.4232,
"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.286,
"after": 0.407,
"delta": 0.121,
"percent_delta": 0.4232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3106,
"delta": -0.0644,
"percent_delta": -0.1718,
"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.255,
"after": 0.0,
"delta": -0.255,
"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.114,
"after": 4.0,
"delta": -0.114,
"percent_delta": -0.0277,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2531,
"delta": 0.0141,
"percent_delta": 0.059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.349,
"after": 0.0,
"delta": -0.349,
"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.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3106,
"delta": 0.0026,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.647,
"after": 1.0,
"delta": 0.353,
"percent_delta": 0.5456,
"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.397,
"after": 0.407,
"delta": 0.01,
"percent_delta": 0.0252,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.851,
"after": 1.0,
"delta": 0.149,
"percent_delta": 0.1751,
"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_HR",
"before": 0.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.349,
"after": 0.0,
"delta": -0.349,
"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.255 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 4.114 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.349 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.308 | - |
| predicted_R | 0.647 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.397 | - |
| 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.325 | 0.070 |
| predicted_3B | 0.020 | 0.004 |
| predicted_AB | 7.178 | 3.064 |
| predicted_AVG | 0.247 | 0.008 |
| predicted_BB | 0.596 | 0.247 |
| predicted_H | 1.789 | 0.829 |
| predicted_HBP | 0.027 | - |
| predicted_HR | 0.241 | 0.111 |
| predicted_OBP | 0.309 | 0.001 |
| predicted_R | 1.124 | 0.477 |
| predicted_RBI | 0.811 | 0.361 |
| predicted_SLG | 0.399 | 0.002 |
| predicted_SO | 1.464 | 0.613 |
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.325 | 0.000 |
| predicted_3B | 0.020 | 0.000 |
| predicted_AB | 7.178 | 0.000 |
| predicted_AVG | 0.253 | 0.006 |
| predicted_BB | 0.599 | 0.003 |
| predicted_H | 1.816 | 0.027 |
| predicted_HBP | 0.027 | 0.000 |
| predicted_HR | 0.246 | 0.005 |
| predicted_OBP | 0.311 | 0.001 |
| predicted_R | 1.151 | 0.027 |
| predicted_RBI | 0.830 | 0.020 |
| predicted_SLG | 0.407 | 0.008 |
| predicted_SO | 1.455 | -0.009 |
AB rounded to 7 (raw=7.18), rates preserved: AVG=0.253 HR/AB=0.034
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.325 |
| predicted_3B | 0.000 | -0.020 |
| predicted_AB | 7.000 | -0.178 |
| predicted_AVG | 0.286 | 0.033 |
| predicted_BB | 1.000 | 0.401 |
| predicted_H | 2.000 | 0.184 |
| predicted_HR | 0.000 | -0.246 |
| predicted_OBP | 0.375 | 0.064 |
| predicted_R | 1.000 | -0.151 |
| predicted_RBI | 1.000 | 0.170 |
| predicted_SLG | 0.286 | -0.121 |
| predicted_SO | 1.000 | -0.455 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.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 | 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 | 2.000 | 4.000 | 2.000 | 4.000 | 0.3158 | 0.3810 | 0.4737 | 0.3158 | 0.0526 | 0.1053 | 0.1053 | 0.2105 |
| last_10 | 0.20 | 10 | - | 39.000 | 8.000 | 0.000 | 0.000 | 1.000 | 4.000 | 4.000 | 2.000 | 7.000 | 0.2051 | 0.2381 | 0.2821 | 0.2051 | 0.0256 | 0.1026 | 0.0513 | 0.1795 |
| season | 0.60 | 65 | - | 1049.000 | 267.000 | 65.000 | 4.000 | 33.000 | 127.000 | 165.000 | 89.000 | 217.000 | 0.2545 | 0.3114 | 0.4185 | 0.2545 | 0.0315 | 0.1211 | 0.0848 | 0.2069 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4140 |
| predicted_3B | 0.0260 |
| predicted_AB | 11.0370 |
| predicted_AVG | 0.2567 |
| predicted_BB | 0.9060 |
| predicted_H | 2.8340 |
| predicted_HBP | 0.0270 |
| predicted_HR | 0.3810 |
| predicted_OBP | 0.3107 |
| predicted_R | 1.7250 |
| predicted_RBI | 1.2650 |
| predicted_SLG | 0.4024 |
| predicted_SO | 2.2360 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2550 | 0.4140 | 0.3254 | model_form_blend |
| predicted_3B | 0.0160 | 0.0260 | 0.0204 | model_form_blend |
| predicted_AB | 4.1140 | 11.0370 | 7.1781 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2567 | 0.2468 | model_form_blend |
| predicted_BB | 0.3490 | 0.9060 | 0.5955 | model_form_blend |
| predicted_H | 0.9600 | 2.8340 | 1.7894 | model_form_blend |
| predicted_HBP | - | 0.0270 | 0.0270 | form_only |
| predicted_HR | 0.1300 | 0.3810 | 0.2411 | model_form_blend |
| predicted_OBP | 0.3080 | 0.3107 | 0.3092 | model_form_blend |
| predicted_R | 0.6470 | 1.7250 | 1.1241 | model_form_blend |
| predicted_RBI | 0.4500 | 1.2650 | 0.8107 | model_form_blend |
| predicted_SLG | 0.3970 | 0.4024 | 0.3994 | model_form_blend |
| predicted_SO | 0.8510 | 2.2360 | 1.4640 | 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 | 255 |
| Season rows before report date | 255 |
| Report year | 2026 |
| Profile rows used | 255 |
| 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 | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.255 |
| 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 | 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 | LF |
| gameID | 20260607_WAS@ARI |
| game_type | full |
| mlbID | 695734 |
| playerID | 695734 |
| playerName | Daylen Lile |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.2 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.315 |
| sl_xwoba | 0.32 |
| sl_xba | 0.257 |
| sl_xslg | 0.421 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 37.0 |
| sl_exit_velocity_avg | 87.8 |
| sl_launch_angle_avg | 17.3 |
| sl_whiff_percent | 23.7 |
| 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.239 | 0.000 | 0.000 | Hitting_2B | 0.239 | 0.000 | -0.239 | 0.000 |
| predicted_3B | 0.040 | 0.000 | 0.000 | Hitting_3B | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_AB | 3.950 | 4.000 | 7.000 | Hitting_AB | 3.802 | 4.000 | 0.198 | 0.000 |
| predicted_AVG | 0.244 | 0.000 | 0.286 | Hitting_AVG | 0.297 | 0.250 | -0.297 | -0.250 |
| predicted_BB | 0.462 | 0.000 | 1.000 | Hitting_BB | 0.462 | 0.000 | -0.462 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.069 | 0.000 | -0.069 | 0.000 |
| predicted_H | 0.960 | 0.000 | 2.000 | Hitting_H | 1.130 | 1.000 | -1.130 | -1.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.202 | 1.000 | -0.202 | -1.000 |
| predicted_OBP | 0.340 | 0.000 | 0.375 | Hitting_OBP | 0.387 | 0.250 | -0.387 | -0.250 |
| predicted_R | 0.615 | 0.000 | 1.000 | Hitting_R | 0.615 | 1.000 | -0.615 | -1.000 |
| predicted_RBI | 0.560 | 0.000 | 1.000 | Hitting_RBI | 0.842 | 1.000 | -0.842 | -1.000 |
| predicted_SLG | 0.463 | 0.000 | 0.286 | Hitting_SLG | 0.541 | 1.000 | -0.541 | -1.000 |
| predicted_SO | 0.887 | 1.000 | 2.000 | Hitting_SO | 0.887 | 0.000 | 0.113 | 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.8870 -> 1.0000 (boost 0.1130, worse) |
| Biggest Deboost | predicted_H: 0.9600 -> 0.0000 (deboost -0.9600, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.9500 -> 6.6433 (boost 2.6933, 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.4877 -> 0.5122 (boost 0.0245, better) | predicted_OBP: 0.3488 -> 0.3420 (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 | 9 | 4 | 5 | 3 | 6 | predicted_SO: 1.5856 -> 2.0000 (boost 0.4144, worse) | predicted_HR: 0.3951 -> 0.0000 (deboost -0.3951, worse) | AB rounded to 7 (raw=6.64), rates preserved: AVG=0.266 HR/AB=0.059 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=17.0, weight=0.145, BvP AVG=0.176) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1412 -> 1.0000 (deboost -0.1412, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3420 -> 0.3750 (boost 0.0330, better) | predicted_SLG: 0.5122 -> 0.2860 (deboost -0.2262, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.5122 (boost 0.2262, better) | predicted_OBP: 0.3750 -> 0.3420 (deboost -0.0330, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682928",
"player_name": "CJ Abrams",
"position": "SS",
"team": "WAS",
"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.239,
"predicted_3B": 0.04,
"predicted_AB": 3.95,
"predicted_AVG": 0.244,
"predicted_BB": 0.462,
"predicted_H": 0.96,
"predicted_HR": 0.2,
"predicted_OBP": 0.34,
"predicted_R": 0.615,
"predicted_RBI": 0.56,
"predicted_SLG": 0.463,
"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.3487,
"predicted_3B": 0.0502,
"predicted_AB": 6.6433,
"predicted_AVG": 0.2563,
"predicted_BB": 0.7614,
"predicted_H": 1.7419,
"predicted_HBP": 0.32,
"predicted_HR": 0.3866,
"predicted_OBP": 0.3488,
"predicted_R": 1.1143,
"predicted_RBI": 1.0589,
"predicted_SLG": 0.4877,
"predicted_SO": 1.595
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.239,
"after": 0.3487,
"delta": 0.1097,
"percent_delta": 0.459,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0502,
"delta": 0.0102,
"percent_delta": 0.255,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.95,
"after": 6.6433,
"delta": 2.6933,
"percent_delta": 0.6818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2563,
"delta": 0.0123,
"percent_delta": 0.0504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 0.7614,
"delta": 0.2994,
"percent_delta": 0.6481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.7419,
"delta": 0.7819,
"percent_delta": 0.8145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.3866,
"delta": 0.1866,
"percent_delta": 0.933,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.34,
"after": 0.3488,
"delta": 0.0088,
"percent_delta": 0.0259,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.615,
"after": 1.1143,
"delta": 0.4993,
"percent_delta": 0.8119,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 1.0589,
"delta": 0.4989,
"percent_delta": 0.8909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.463,
"after": 0.4877,
"delta": 0.0247,
"percent_delta": 0.0533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.887,
"after": 1.595,
"delta": 0.708,
"percent_delta": 0.7982,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.95,
"after": 6.6433,
"delta": 2.6933,
"percent_delta": 0.6818,
"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.3487,
"predicted_3B": 0.0502,
"predicted_AB": 6.6433,
"predicted_AVG": 0.2662,
"predicted_BB": 0.7659,
"predicted_H": 1.7682,
"predicted_HBP": 0.32,
"predicted_HR": 0.3951,
"predicted_OBP": 0.342,
"predicted_R": 1.1412,
"predicted_RBI": 1.0844,
"predicted_SLG": 0.5122,
"predicted_SO": 1.5856
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3487,
"after": 0.3487,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0502,
"after": 0.0502,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6433,
"after": 6.6433,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2563,
"after": 0.2662,
"delta": 0.0099,
"percent_delta": 0.0386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7614,
"after": 0.7659,
"delta": 0.0045,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7419,
"after": 1.7682,
"delta": 0.0263,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.32,
"after": 0.32,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3866,
"after": 0.3951,
"delta": 0.0085,
"percent_delta": 0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3488,
"after": 0.342,
"delta": -0.0068,
"percent_delta": -0.0195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1143,
"after": 1.1412,
"delta": 0.0269,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0589,
"after": 1.0844,
"delta": 0.0255,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4877,
"after": 0.5122,
"delta": 0.0245,
"percent_delta": 0.0502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.595,
"after": 1.5856,
"delta": -0.0094,
"percent_delta": -0.0059,
"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.4877,
"after": 0.5122,
"delta": 0.0245,
"percent_delta": 0.0502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3488,
"after": 0.342,
"delta": -0.0068,
"percent_delta": -0.0195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.64), rates preserved: AVG=0.266 HR/AB=0.059",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3487,
"after": 0.0,
"delta": -0.3487,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0502,
"after": 0.0,
"delta": -0.0502,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.6433,
"after": 7.0,
"delta": 0.3567,
"percent_delta": 0.0537,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7659,
"after": 1.0,
"delta": 0.2341,
"percent_delta": 0.3057,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7682,
"after": 2.0,
"delta": 0.2318,
"percent_delta": 0.1311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3951,
"after": 0.0,
"delta": -0.3951,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0844,
"after": 1.0,
"delta": -0.0844,
"percent_delta": -0.0778,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5856,
"after": 2.0,
"delta": 0.4144,
"percent_delta": 0.2614,
"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.5856,
"after": 2.0,
"delta": 0.4144,
"percent_delta": 0.2614,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3951,
"after": 0.0,
"delta": -0.3951,
"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=17.0, weight=0.145, BvP AVG=0.176)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 7.0,
"after": 7.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": 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_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": 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": {
"model_expectation": 0.8553,
"bvp": 0.1447
},
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.1412,
"after": 1.0,
"delta": -0.1412,
"percent_delta": -0.1237,
"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": 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_R",
"before": 1.1412,
"after": 1.0,
"delta": -0.1412,
"percent_delta": -0.1237,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2662,
"after": 0.286,
"delta": 0.0198,
"percent_delta": 0.0744,
"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": 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_OBP",
"before": 0.342,
"after": 0.375,
"delta": 0.033,
"percent_delta": 0.0965,
"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.5122,
"after": 0.286,
"delta": -0.2262,
"percent_delta": -0.4416,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.375,
"delta": 0.033,
"percent_delta": 0.0965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5122,
"after": 0.286,
"delta": -0.2262,
"percent_delta": -0.4416,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2662,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.342,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5122,
"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.286,
"after": 0.2662,
"delta": -0.0198,
"percent_delta": -0.0694,
"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.375,
"after": 0.342,
"delta": -0.033,
"percent_delta": -0.0879,
"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.286,
"after": 0.5122,
"delta": 0.2262,
"percent_delta": 0.7909,
"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.286,
"after": 0.5122,
"delta": 0.2262,
"percent_delta": 0.7909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.342,
"delta": -0.033,
"percent_delta": -0.0879,
"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.239,
"after": 0.0,
"delta": -0.239,
"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.95,
"after": 4.0,
"delta": 0.05,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2662,
"delta": 0.0222,
"percent_delta": 0.091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 0.0,
"delta": -0.462,
"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.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.34,
"after": 0.342,
"delta": 0.002,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.615,
"after": 0.0,
"delta": -0.615,
"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.463,
"after": 0.5122,
"delta": 0.0492,
"percent_delta": 0.1063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.887,
"after": 1.0,
"delta": 0.113,
"percent_delta": 0.1274,
"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.887,
"after": 1.0,
"delta": 0.113,
"percent_delta": 0.1274,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.96,
"after": 0.0,
"delta": -0.96,
"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.239 | - |
| predicted_3B | 0.040 | - |
| predicted_AB | 3.950 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.462 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.340 | - |
| predicted_R | 0.615 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.463 | - |
| 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.349 | 0.110 |
| predicted_3B | 0.050 | 0.010 |
| predicted_AB | 6.643 | 2.693 |
| predicted_AVG | 0.256 | 0.012 |
| predicted_BB | 0.761 | 0.299 |
| predicted_H | 1.742 | 0.782 |
| predicted_HBP | 0.320 | - |
| predicted_HR | 0.387 | 0.187 |
| predicted_OBP | 0.349 | 0.009 |
| predicted_R | 1.114 | 0.499 |
| predicted_RBI | 1.059 | 0.499 |
| predicted_SLG | 0.488 | 0.025 |
| predicted_SO | 1.595 | 0.708 |
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.349 | 0.000 |
| predicted_3B | 0.050 | 0.000 |
| predicted_AB | 6.643 | 0.000 |
| predicted_AVG | 0.266 | 0.010 |
| predicted_BB | 0.766 | 0.005 |
| predicted_H | 1.768 | 0.026 |
| predicted_HBP | 0.320 | 0.000 |
| predicted_HR | 0.395 | 0.009 |
| predicted_OBP | 0.342 | -0.007 |
| predicted_R | 1.141 | 0.027 |
| predicted_RBI | 1.084 | 0.026 |
| predicted_SLG | 0.512 | 0.024 |
| predicted_SO | 1.586 | -0.009 |
AB rounded to 7 (raw=6.64), rates preserved: AVG=0.266 HR/AB=0.059
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=17.0, weight=0.145, BvP AVG=0.176)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.349 |
| predicted_3B | 0.000 | -0.050 |
| predicted_AB | 7.000 | 0.357 |
| predicted_AVG | 0.286 | 0.020 |
| predicted_BB | 1.000 | 0.234 |
| predicted_H | 2.000 | 0.232 |
| predicted_HR | 0.000 | -0.395 |
| predicted_OBP | 0.375 | 0.033 |
| predicted_R | 1.000 | -0.141 |
| predicted_RBI | 1.000 | -0.084 |
| predicted_SLG | 0.286 | -0.226 |
| predicted_SO | 2.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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | -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 | 0.000 | 2.000 | 2.000 | 4.000 | 2.000 | 6.000 | 0.2000 | 0.2727 | 0.5000 | 0.2000 | 0.1000 | 0.1000 | 0.1000 | 0.3000 |
| last_10 | 0.20 | 10 | - | 37.000 | 10.000 | 2.000 | 0.000 | 2.000 | 3.000 | 7.000 | 4.000 | 9.000 | 0.2703 | 0.3721 | 0.4865 | 0.2703 | 0.0541 | 0.0811 | 0.1081 | 0.2432 |
| season | 0.60 | 65 | - | 939.000 | 279.000 | 59.000 | 10.000 | 50.000 | 208.000 | 152.000 | 114.000 | 219.000 | 0.2971 | 0.3871 | 0.5410 | 0.2971 | 0.0532 | 0.2215 | 0.1214 | 0.2332 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4870 |
| predicted_3B | 0.0630 |
| predicted_AB | 10.0400 |
| predicted_AVG | 0.2717 |
| predicted_BB | 1.1390 |
| predicted_H | 2.7280 |
| predicted_HBP | 0.3200 |
| predicted_HR | 0.6220 |
| predicted_OBP | 0.3600 |
| predicted_R | 1.7440 |
| predicted_RBI | 1.6880 |
| predicted_SLG | 0.5189 |
| predicted_SO | 2.4880 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2390 | 0.4870 | 0.3487 | model_form_blend |
| predicted_3B | 0.0400 | 0.0630 | 0.0502 | model_form_blend |
| predicted_AB | 3.9500 | 10.0400 | 6.6433 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2717 | 0.2563 | model_form_blend |
| predicted_BB | 0.4620 | 1.1390 | 0.7614 | model_form_blend |
| predicted_H | 0.9600 | 2.7280 | 1.7419 | model_form_blend |
| predicted_HBP | - | 0.3200 | 0.3200 | form_only |
| predicted_HR | 0.2000 | 0.6220 | 0.3866 | model_form_blend |
| predicted_OBP | 0.3400 | 0.3600 | 0.3488 | model_form_blend |
| predicted_R | 0.6150 | 1.7440 | 1.1143 | model_form_blend |
| predicted_RBI | 0.5600 | 1.6880 | 1.0589 | model_form_blend |
| predicted_SLG | 0.4630 | 0.5189 | 0.4877 | model_form_blend |
| predicted_SO | 0.8870 | 2.4880 | 1.5950 | 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 | 247 |
| 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.297 |
| 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 | 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 | 20260607_WAS@ARI |
| game_type | full |
| mlbID | 682928 |
| playerID | 682928 |
| playerName | CJ Abrams |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-07 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.394 |
| sl_xwoba | 0.363 |
| sl_xba | 0.267 |
| sl_xslg | 0.464 |
| sl_sweet_spot_percent | 35.1 |
| sl_barrel_batted_rate | 10.9 |
| sl_hard_hit_percent | 41.6 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 16.7 |
| sl_whiff_percent | 28.3 |
| 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.132 | 1.000 | 0.000 | Hitting_2B | 0.128 | 0.000 | 0.872 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.158 | 4.000 | 6.000 | Hitting_AB | 4.051 | 4.000 | -0.051 | 0.000 |
| predicted_AVG | 0.218 | 0.250 | 0.167 | Hitting_AVG | 0.228 | 0.000 | 0.022 | 0.250 |
| predicted_BB | 0.105 | 0.000 | 0.000 | Hitting_BB | 0.103 | 0.000 | -0.103 | 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.923 | 0.000 | 0.077 | 1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.128 | 0.000 | -0.128 | 0.000 |
| predicted_OBP | 0.278 | 0.250 | 0.167 | Hitting_OBP | 0.261 | 0.000 | -0.011 | 0.250 |
| predicted_R | 0.237 | 0.000 | 0.000 | Hitting_R | 0.231 | 0.000 | -0.231 | 0.000 |
| predicted_RBI | 0.460 | 0.000 | 1.000 | Hitting_RBI | 0.231 | 0.000 | -0.231 | 0.000 |
| predicted_SLG | 0.355 | 0.500 | 0.167 | Hitting_SLG | 0.354 | 0.000 | 0.146 | 0.500 |
| predicted_SO | 0.763 | 1.000 | 1.000 | Hitting_SO | 0.744 | 1.000 | 0.256 | 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_2B: 0.1320 -> 1.0000 (boost 0.8680, better) |
| Biggest Deboost | predicted_RBI: 0.4600 -> 0.0000 (deboost -0.4600, 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 | 6 | 2 | 5 | 3 | predicted_AB: 4.1580 -> 5.5905 (boost 1.4325, better) | predicted_OBP: 0.2780 -> 0.2705 (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 | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.2705 -> 0.2332 (deboost -0.0373, 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_RBI: 0.5773 -> 1.0000 (boost 0.4227, better) | predicted_HBP: 0.2970 -> 0.0000 (deboost -0.2970, worse) | AB rounded to 6 (raw=5.59), rates preserved: AVG=0.213 HR/AB=0.034 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4015 -> 0.0000 (deboost -0.4015, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3439 -> 0.1670 (deboost -0.1769, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 1 | 2 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3439 (boost 0.1769, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686611",
"player_name": "Dylan Crews",
"position": "CF",
"team": "WAS",
"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.158,
"predicted_AVG": 0.218,
"predicted_BB": 0.105,
"predicted_H": 0.87,
"predicted_HR": 0.13,
"predicted_OBP": 0.278,
"predicted_R": 0.237,
"predicted_RBI": 0.46,
"predicted_SLG": 0.355,
"predicted_SO": 0.763
},
"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.1563,
"predicted_3B": 0.002,
"predicted_AB": 5.5905,
"predicted_AVG": 0.2152,
"predicted_BB": 0.1431,
"predicted_H": 1.1758,
"predicted_HBP": 0.297,
"predicted_HR": 0.1855,
"predicted_OBP": 0.2705,
"predicted_R": 0.3921,
"predicted_RBI": 0.5637,
"predicted_SLG": 0.3494,
"predicted_SO": 1.0619
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.132,
"after": 0.1563,
"delta": 0.0243,
"percent_delta": 0.1841,
"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": 4.158,
"after": 5.5905,
"delta": 1.4325,
"percent_delta": 0.3445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2152,
"delta": -0.0028,
"percent_delta": -0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.105,
"after": 0.1431,
"delta": 0.0381,
"percent_delta": 0.3629,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 1.1758,
"delta": 0.3058,
"percent_delta": 0.3515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1855,
"delta": 0.0555,
"percent_delta": 0.4269,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2705,
"delta": -0.0075,
"percent_delta": -0.027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.237,
"after": 0.3921,
"delta": 0.1551,
"percent_delta": 0.6544,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.5637,
"delta": 0.1037,
"percent_delta": 0.2254,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3494,
"delta": -0.0056,
"percent_delta": -0.0158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.763,
"after": 1.0619,
"delta": 0.2989,
"percent_delta": 0.3917,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 6,
"deboosted_metrics": 2,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.158,
"after": 5.5905,
"delta": 1.4325,
"percent_delta": 0.3445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2705,
"delta": -0.0075,
"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": 8,
"season": 15
}
},
{
"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.1563,
"predicted_3B": 0.002,
"predicted_AB": 5.5905,
"predicted_AVG": 0.2135,
"predicted_BB": 0.1439,
"predicted_H": 1.1936,
"predicted_HBP": 0.297,
"predicted_HR": 0.1896,
"predicted_OBP": 0.2332,
"predicted_R": 0.4015,
"predicted_RBI": 0.5773,
"predicted_SLG": 0.3439,
"predicted_SO": 1.0556
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1563,
"after": 0.1563,
"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": 5.5905,
"after": 5.5905,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2152,
"after": 0.2135,
"delta": -0.0017,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1431,
"after": 0.1439,
"delta": 0.0008,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1758,
"after": 1.1936,
"delta": 0.0178,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.297,
"after": 0.297,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1855,
"after": 0.1896,
"delta": 0.0041,
"percent_delta": 0.0221,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2705,
"after": 0.2332,
"delta": -0.0373,
"percent_delta": -0.1379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3921,
"after": 0.4015,
"delta": 0.0094,
"percent_delta": 0.024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5637,
"after": 0.5773,
"delta": 0.0136,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3494,
"after": 0.3439,
"delta": -0.0055,
"percent_delta": -0.0157,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0619,
"after": 1.0556,
"delta": -0.0063,
"percent_delta": -0.0059,
"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.2705,
"after": 0.2332,
"delta": -0.0373,
"percent_delta": -0.1379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.59), rates preserved: AVG=0.213 HR/AB=0.034",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.1563,
"after": 0.0,
"delta": -0.1563,
"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": 5.5905,
"after": 6.0,
"delta": 0.4095,
"percent_delta": 0.0732,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1439,
"after": 0.0,
"delta": -0.1439,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1936,
"after": 1.0,
"delta": -0.1936,
"percent_delta": -0.1622,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1896,
"after": 0.0,
"delta": -0.1896,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5773,
"after": 1.0,
"delta": 0.4227,
"percent_delta": 0.7322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0556,
"after": 1.0,
"delta": -0.0556,
"percent_delta": -0.0527,
"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_RBI",
"before": 0.5773,
"after": 1.0,
"delta": 0.4227,
"percent_delta": 0.7322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"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": 6.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": 6.0,
"after": 6.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.4015,
"after": 0.0,
"delta": -0.4015,
"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.4015,
"after": 0.0,
"delta": -0.4015,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.167,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2135,
"after": 0.167,
"delta": -0.0465,
"percent_delta": -0.2178,
"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.2332,
"after": 0.167,
"delta": -0.0662,
"percent_delta": -0.2839,
"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.3439,
"after": 0.167,
"delta": -0.1769,
"percent_delta": -0.5144,
"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.3439,
"after": 0.167,
"delta": -0.1769,
"percent_delta": -0.5144,
"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": 6.0,
"after": 4.0,
"delta": -2.0,
"percent_delta": -0.3333,
"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": 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": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"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": 6.0,
"after": 4.0,
"delta": -2.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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2135,
"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.2332,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3439,
"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.167,
"after": 0.2135,
"delta": 0.0465,
"percent_delta": 0.2784,
"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.167,
"after": 0.2332,
"delta": 0.0662,
"percent_delta": 0.3966,
"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.167,
"after": 0.3439,
"delta": 0.1769,
"percent_delta": 1.0593,
"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.167,
"after": 0.3439,
"delta": 0.1769,
"percent_delta": 1.0593,
"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.158,
"after": 4.0,
"delta": -0.158,
"percent_delta": -0.038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2135,
"delta": -0.0045,
"percent_delta": -0.0206,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.105,
"after": 0.0,
"delta": -0.105,
"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.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2332,
"delta": -0.0448,
"percent_delta": -0.1612,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.237,
"after": 0.0,
"delta": -0.237,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.0,
"delta": -0.46,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3439,
"delta": -0.0111,
"percent_delta": -0.0313,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.763,
"after": 1.0,
"delta": 0.237,
"percent_delta": 0.3106,
"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_2B",
"before": 0.132,
"after": 1.0,
"delta": 0.868,
"percent_delta": 6.5758,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.0,
"delta": -0.46,
"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.132 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.158 | - |
| predicted_AVG | 0.218 | - |
| predicted_BB | 0.105 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.278 | - |
| predicted_R | 0.237 | - |
| predicted_RBI | 0.460 | - |
| predicted_SLG | 0.355 | - |
| predicted_SO | 0.763 | - |
Final model 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.156 | 0.024 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 5.590 | 1.432 |
| predicted_AVG | 0.215 | -0.003 |
| predicted_BB | 0.143 | 0.038 |
| predicted_H | 1.176 | 0.306 |
| predicted_HBP | 0.297 | - |
| predicted_HR | 0.185 | 0.055 |
| predicted_OBP | 0.271 | -0.008 |
| predicted_R | 0.392 | 0.155 |
| predicted_RBI | 0.564 | 0.104 |
| predicted_SLG | 0.349 | -0.006 |
| predicted_SO | 1.062 | 0.299 |
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.156 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 5.590 | 0.000 |
| predicted_AVG | 0.213 | -0.002 |
| predicted_BB | 0.144 | 0.001 |
| predicted_H | 1.194 | 0.018 |
| predicted_HBP | 0.297 | 0.000 |
| predicted_HR | 0.190 | 0.004 |
| predicted_OBP | 0.233 | -0.037 |
| predicted_R | 0.402 | 0.009 |
| predicted_RBI | 0.577 | 0.014 |
| predicted_SLG | 0.344 | -0.006 |
| predicted_SO | 1.056 | -0.006 |
AB rounded to 6 (raw=5.59), rates preserved: AVG=0.213 HR/AB=0.034
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.156 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 6.000 | 0.410 |
| predicted_AVG | 0.167 | -0.046 |
| predicted_BB | 0.000 | -0.144 |
| predicted_H | 1.000 | -0.194 |
| predicted_HR | 0.000 | -0.190 |
| predicted_OBP | 0.167 | -0.066 |
| predicted_R | 0.000 | -0.402 |
| predicted_RBI | 1.000 | 0.423 |
| predicted_SLG | 0.167 | -0.177 |
| predicted_SO | 1.000 | -0.056 |
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 | -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 | 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 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 5.000 | 0.1500 | 0.2273 | 0.3000 | 0.1500 | 0.0500 | 0.1500 | 0.0000 | 0.2500 |
| last_10 | 0.20 | 8 | - | 40.000 | 7.000 | 0.000 | 0.000 | 1.000 | 5.000 | 4.000 | 0.000 | 5.000 | 0.1750 | 0.2326 | 0.2500 | 0.1750 | 0.0250 | 0.1250 | 0.0000 | 0.1250 |
| season | 0.60 | 15 | - | 158.000 | 36.000 | 5.000 | 0.000 | 5.000 | 9.000 | 9.000 | 4.000 | 29.000 | 0.2278 | 0.2606 | 0.3544 | 0.2278 | 0.0316 | 0.0570 | 0.0253 | 0.1835 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1920 |
| predicted_3B | 0.0050 |
| predicted_AB | 7.6950 |
| predicted_AVG | 0.2111 |
| predicted_BB | 0.1990 |
| predicted_H | 1.6250 |
| predicted_HBP | 0.2970 |
| predicted_HR | 0.2670 |
| predicted_OBP | 0.2595 |
| predicted_R | 0.6200 |
| predicted_RBI | 0.7160 |
| predicted_SLG | 0.3412 |
| predicted_SO | 1.5010 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1320 | 0.1920 | 0.1563 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0020 | model_form_blend |
| predicted_AB | 4.1580 | 7.6950 | 5.5905 | model_form_blend |
| predicted_AVG | 0.2180 | 0.2111 | 0.2152 | model_form_blend |
| predicted_BB | 0.1050 | 0.1990 | 0.1431 | model_form_blend |
| predicted_H | 0.8700 | 1.6250 | 1.1758 | model_form_blend |
| predicted_HBP | - | 0.2970 | 0.2970 | form_only |
| predicted_HR | 0.1300 | 0.2670 | 0.1855 | model_form_blend |
| predicted_OBP | 0.2780 | 0.2595 | 0.2705 | model_form_blend |
| predicted_R | 0.2370 | 0.6200 | 0.3921 | model_form_blend |
| predicted_RBI | 0.4600 | 0.7160 | 0.5637 | model_form_blend |
| predicted_SLG | 0.3550 | 0.3412 | 0.3494 | model_form_blend |
| predicted_SO | 0.7630 | 1.5010 | 1.0619 | 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 | 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 | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| 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 | 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 | 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 | 20260607_WAS@ARI |
| game_type | full |
| mlbID | 686611 |
| playerID | 686611 |
| playerName | Dylan Crews |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.5 |
| sl_bb_percent | 1.5 |
| sl_woba | 0.252 |
| sl_xwoba | 0.326 |
| sl_xba | 0.255 |
| sl_xslg | 0.454 |
| sl_sweet_spot_percent | 30.6 |
| sl_barrel_batted_rate | 10.2 |
| sl_hard_hit_percent | 46.9 |
| sl_exit_velocity_avg | 91.3 |
| sl_launch_angle_avg | 11.8 |
| sl_whiff_percent | 24.6 |
| 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.269 | 0.000 | 0.000 | Hitting_2B | 0.269 | 0.000 | -0.269 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.330 | 5.000 | 7.000 | Hitting_AB | 3.847 | 2.000 | 1.153 | 3.000 |
| predicted_AVG | 0.231 | 0.200 | 0.286 | Hitting_AVG | 0.287 | 0.000 | -0.087 | 0.200 |
| predicted_BB | 0.884 | 0.000 | 2.000 | Hitting_BB | 0.884 | 2.000 | -0.884 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.015 | 0.000 | -0.015 | 0.000 |
| predicted_H | 1.000 | 1.000 | 2.000 | Hitting_H | 1.105 | 0.000 | -0.105 | 1.000 |
| predicted_HR | 0.250 | 0.000 | 0.000 | Hitting_HR | 0.280 | 0.000 | -0.280 | 0.000 |
| predicted_OBP | 0.361 | 0.200 | 0.444 | Hitting_OBP | 0.430 | 0.500 | -0.230 | -0.300 |
| predicted_R | 0.975 | 0.000 | 2.000 | Hitting_R | 0.975 | 0.000 | -0.975 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.709 | 0.000 | -0.709 | 0.000 |
| predicted_SLG | 0.463 | 0.200 | 0.286 | Hitting_SLG | 0.576 | 0.000 | -0.376 | 0.200 |
| predicted_SO | 1.404 | 1.000 | 3.000 | Hitting_SO | 1.404 | 0.000 | -0.404 | 1.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_AB: 4.3300 -> 5.0000 (boost 0.6700, better) |
| Biggest Deboost | predicted_R: 0.9750 -> 0.0000 (deboost -0.9750, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.3300 -> 7.2172 (boost 2.8872, 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.4767 -> 0.4926 (boost 0.0159, 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_BB: 1.6761 -> 2.0000 (boost 0.3239, better) | predicted_HR: 0.4672 -> 0.0000 (deboost -0.4672, worse) | AB rounded to 7 (raw=7.22), rates preserved: AVG=0.246 HR/AB=0.065 |
| 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: 1.7479 -> 2.0000 (boost 0.2521, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3880 -> 0.4440 (boost 0.0560, better) | predicted_SLG: 0.4926 -> 0.2860 (deboost -0.2066, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4926 (boost 0.2066, better) | predicted_OBP: 0.4440 -> 0.3880 (deboost -0.0560, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695578",
"player_name": "James Wood",
"position": "RF",
"team": "WAS",
"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.269,
"predicted_3B": 0.0,
"predicted_AB": 4.33,
"predicted_AVG": 0.231,
"predicted_BB": 0.884,
"predicted_H": 1.0,
"predicted_HR": 0.25,
"predicted_OBP": 0.361,
"predicted_R": 0.975,
"predicted_RBI": 0.52,
"predicted_SLG": 0.463,
"predicted_SO": 1.404
},
"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.379,
"predicted_3B": 0.0004,
"predicted_AB": 7.2172,
"predicted_AVG": 0.2384,
"predicted_BB": 1.6663,
"predicted_H": 1.7478,
"predicted_HBP": 0.128,
"predicted_HR": 0.4571,
"predicted_OBP": 0.3789,
"predicted_R": 1.7068,
"predicted_RBI": 0.9591,
"predicted_SLG": 0.4767,
"predicted_SO": 2.7345
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.269,
"after": 0.379,
"delta": 0.11,
"percent_delta": 0.4089,
"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.33,
"after": 7.2172,
"delta": 2.8872,
"percent_delta": 0.6668,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2384,
"delta": 0.0074,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.884,
"after": 1.6663,
"delta": 0.7823,
"percent_delta": 0.885,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.7478,
"delta": 0.7478,
"percent_delta": 0.7478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.25,
"after": 0.4571,
"delta": 0.2071,
"percent_delta": 0.8284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.361,
"after": 0.3789,
"delta": 0.0179,
"percent_delta": 0.0496,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.975,
"after": 1.7068,
"delta": 0.7318,
"percent_delta": 0.7506,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.9591,
"delta": 0.4391,
"percent_delta": 0.8444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.463,
"after": 0.4767,
"delta": 0.0137,
"percent_delta": 0.0296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.404,
"after": 2.7345,
"delta": 1.3305,
"percent_delta": 0.9476,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.33,
"after": 7.2172,
"delta": 2.8872,
"percent_delta": 0.6668,
"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.379,
"predicted_3B": 0.0004,
"predicted_AB": 7.2172,
"predicted_AVG": 0.2458,
"predicted_BB": 1.6761,
"predicted_H": 1.7742,
"predicted_HBP": 0.128,
"predicted_HR": 0.4672,
"predicted_OBP": 0.388,
"predicted_R": 1.7479,
"predicted_RBI": 0.9822,
"predicted_SLG": 0.4926,
"predicted_SO": 2.7184
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.379,
"after": 0.379,
"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": 7.2172,
"after": 7.2172,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2384,
"after": 0.2458,
"delta": 0.0074,
"percent_delta": 0.031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.6663,
"after": 1.6761,
"delta": 0.0098,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7478,
"after": 1.7742,
"delta": 0.0264,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.128,
"after": 0.128,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4571,
"after": 0.4672,
"delta": 0.0101,
"percent_delta": 0.0221,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3789,
"after": 0.388,
"delta": 0.0091,
"percent_delta": 0.024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.7068,
"after": 1.7479,
"delta": 0.0411,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9591,
"after": 0.9822,
"delta": 0.0231,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4767,
"after": 0.4926,
"delta": 0.0159,
"percent_delta": 0.0334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.7345,
"after": 2.7184,
"delta": -0.0161,
"percent_delta": -0.0059,
"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.4767,
"after": 0.4926,
"delta": 0.0159,
"percent_delta": 0.0334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.22), rates preserved: AVG=0.246 HR/AB=0.065",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 2.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.379,
"after": 0.0,
"delta": -0.379,
"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": 7.2172,
"after": 7.0,
"delta": -0.2172,
"percent_delta": -0.0301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.6761,
"after": 2.0,
"delta": 0.3239,
"percent_delta": 0.1932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7742,
"after": 2.0,
"delta": 0.2258,
"percent_delta": 0.1273,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.128,
"after": 0.0,
"delta": -0.128,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4672,
"after": 0.0,
"delta": -0.4672,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9822,
"after": 1.0,
"delta": 0.0178,
"percent_delta": 0.0181,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.7184,
"after": 3.0,
"delta": 0.2816,
"percent_delta": 0.1036,
"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": 1.6761,
"after": 2.0,
"delta": 0.3239,
"percent_delta": 0.1932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4672,
"after": 0.0,
"delta": -0.4672,
"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": 7.0,
"predicted_BB": 2.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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_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_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": 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": {
"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": 7.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 2.0,
"predicted_RBI": 1.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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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_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_R",
"before": 1.7479,
"after": 2.0,
"delta": 0.2521,
"percent_delta": 0.1442,
"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": 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": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 1.7479,
"after": 2.0,
"delta": 0.2521,
"percent_delta": 0.1442,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 2.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.444,
"predicted_R": 2.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2458,
"after": 0.286,
"delta": 0.0402,
"percent_delta": 0.1635,
"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_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_OBP",
"before": 0.388,
"after": 0.444,
"delta": 0.056,
"percent_delta": 0.1443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 2.0,
"after": 2.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.4926,
"after": 0.286,
"delta": -0.2066,
"percent_delta": -0.4194,
"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": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.388,
"after": 0.444,
"delta": 0.056,
"percent_delta": 0.1443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4926,
"after": 0.286,
"delta": -0.2066,
"percent_delta": -0.4194,
"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": 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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 3.0,
"after": 1.0,
"delta": -2.0,
"percent_delta": -0.6667,
"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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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.2458,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.388,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4926,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.286,
"after": 0.2458,
"delta": -0.0402,
"percent_delta": -0.1405,
"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.444,
"after": 0.388,
"delta": -0.056,
"percent_delta": -0.1262,
"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.286,
"after": 0.4926,
"delta": 0.2066,
"percent_delta": 0.7225,
"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.286,
"after": 0.4926,
"delta": 0.2066,
"percent_delta": 0.7225,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.444,
"after": 0.388,
"delta": -0.056,
"percent_delta": -0.1262,
"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.269,
"after": 0.0,
"delta": -0.269,
"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": 5.0,
"delta": 0.67,
"percent_delta": 0.1547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2458,
"delta": 0.0148,
"percent_delta": 0.0641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.884,
"after": 0.0,
"delta": -0.884,
"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.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.361,
"after": 0.388,
"delta": 0.027,
"percent_delta": 0.0748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.975,
"after": 0.0,
"delta": -0.975,
"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.463,
"after": 0.4926,
"delta": 0.0296,
"percent_delta": 0.0639,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.404,
"after": 1.0,
"delta": -0.404,
"percent_delta": -0.2877,
"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_AB",
"before": 4.33,
"after": 5.0,
"delta": 0.67,
"percent_delta": 0.1547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.975,
"after": 0.0,
"delta": -0.975,
"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.269 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.330 | - |
| predicted_AVG | 0.231 | - |
| predicted_BB | 0.884 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.250 | - |
| predicted_OBP | 0.361 | - |
| predicted_R | 0.975 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.463 | - |
| predicted_SO | 1.404 | - |
Final model 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.379 | 0.110 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.217 | 2.887 |
| predicted_AVG | 0.238 | 0.007 |
| predicted_BB | 1.666 | 0.782 |
| predicted_H | 1.748 | 0.748 |
| predicted_HBP | 0.128 | - |
| predicted_HR | 0.457 | 0.207 |
| predicted_OBP | 0.379 | 0.018 |
| predicted_R | 1.707 | 0.732 |
| predicted_RBI | 0.959 | 0.439 |
| predicted_SLG | 0.477 | 0.014 |
| predicted_SO | 2.735 | 1.331 |
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.379 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.217 | 0.000 |
| predicted_AVG | 0.246 | 0.007 |
| predicted_BB | 1.676 | 0.010 |
| predicted_H | 1.774 | 0.026 |
| predicted_HBP | 0.128 | 0.000 |
| predicted_HR | 0.467 | 0.010 |
| predicted_OBP | 0.388 | 0.009 |
| predicted_R | 1.748 | 0.041 |
| predicted_RBI | 0.982 | 0.023 |
| predicted_SLG | 0.493 | 0.016 |
| predicted_SO | 2.718 | -0.016 |
AB rounded to 7 (raw=7.22), rates preserved: AVG=0.246 HR/AB=0.065
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 2.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 3.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 | 7.000 | 0.000 |
| BB | 2.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 3.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 | 7.000 | 0.000 |
| BB | 2.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 2.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 3.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.379 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.217 |
| predicted_AVG | 0.286 | 0.040 |
| predicted_BB | 2.000 | 0.324 |
| predicted_H | 2.000 | 0.226 |
| predicted_HR | 0.000 | -0.467 |
| predicted_OBP | 0.444 | 0.056 |
| predicted_R | 2.000 | 0.252 |
| predicted_RBI | 1.000 | 0.018 |
| predicted_SLG | 0.286 | -0.207 |
| predicted_SO | 3.000 | 0.282 |
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 | -2.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -2.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.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 | 3.000 | 0.000 | 0.000 | 1.000 | 1.000 | 4.000 | 5.000 | 9.000 | 0.1765 | 0.3636 | 0.3529 | 0.1765 | 0.0588 | 0.0588 | 0.2941 | 0.5294 |
| last_10 | 0.20 | 10 | - | 35.000 | 7.000 | 1.000 | 0.000 | 2.000 | 3.000 | 8.000 | 9.000 | 15.000 | 0.2000 | 0.3636 | 0.4000 | 0.2000 | 0.0571 | 0.0857 | 0.2571 | 0.4286 |
| season | 0.60 | 66 | - | 1058.000 | 304.000 | 74.000 | 0.000 | 77.000 | 195.000 | 268.000 | 243.000 | 386.000 | 0.2873 | 0.4297 | 0.5756 | 0.2873 | 0.0728 | 0.1843 | 0.2297 | 0.3648 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5170 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.8400 |
| predicted_AVG | 0.2477 |
| predicted_BB | 2.6480 |
| predicted_H | 2.6860 |
| predicted_HBP | 0.1280 |
| predicted_HR | 0.7170 |
| predicted_OBP | 0.4013 |
| predicted_R | 2.6250 |
| predicted_RBI | 1.5100 |
| predicted_SLG | 0.4940 |
| predicted_SO | 4.4040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2690 | 0.5170 | 0.3790 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3300 | 10.8400 | 7.2172 | model_form_blend |
| predicted_AVG | 0.2310 | 0.2477 | 0.2384 | model_form_blend |
| predicted_BB | 0.8840 | 2.6480 | 1.6663 | model_form_blend |
| predicted_H | 1.0000 | 2.6860 | 1.7478 | model_form_blend |
| predicted_HBP | - | 0.1280 | 0.1280 | form_only |
| predicted_HR | 0.2500 | 0.7170 | 0.4571 | model_form_blend |
| predicted_OBP | 0.3610 | 0.4013 | 0.3789 | model_form_blend |
| predicted_R | 0.9750 | 2.6250 | 1.7068 | model_form_blend |
| predicted_RBI | 0.5200 | 1.5100 | 0.9591 | model_form_blend |
| predicted_SLG | 0.4630 | 0.4940 | 0.4767 | model_form_blend |
| predicted_SO | 1.4040 | 4.4040 | 2.7345 | 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 | 275 |
| Season rows before report date | 275 |
| Report year | 2026 |
| Profile rows used | 275 |
| 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.287 |
| 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 | 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 | 20260607_WAS@ARI |
| game_type | full |
| mlbID | 695578 |
| playerID | 695578 |
| playerName | James Wood |
| pos | RF |
| started | True |
| startingPosition | DH |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-07 |
| sl_k_percent | 29.9 |
| sl_bb_percent | 17.9 |
| sl_woba | 0.403 |
| sl_xwoba | 0.433 |
| sl_xba | 0.276 |
| sl_xslg | 0.621 |
| sl_sweet_spot_percent | 43.9 |
| sl_barrel_batted_rate | 25.5 |
| sl_hard_hit_percent | 58.6 |
| sl_exit_velocity_avg | 96.0 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 32.2 |
| 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.381 | 0.000 | 1.000 | Hitting_2B | 0.378 | 1.000 | -0.378 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.475 | 4.000 | 5.000 | Hitting_AB | 3.445 | 3.000 | 0.555 | 1.000 |
| predicted_AVG | 0.257 | 0.500 | 0.200 | Hitting_AVG | 0.261 | 0.333 | 0.239 | 0.167 |
| predicted_BB | 0.085 | 0.000 | 0.000 | Hitting_BB | 0.084 | 0.000 | -0.084 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_H | 0.790 | 2.000 | 1.000 | Hitting_H | 0.899 | 1.000 | 1.101 | 1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.151 | 0.000 | -0.151 | 0.000 |
| predicted_OBP | 0.314 | 0.500 | 0.200 | Hitting_OBP | 0.280 | 0.333 | 0.220 | 0.167 |
| predicted_R | 0.483 | 1.000 | 1.000 | Hitting_R | 0.479 | 0.000 | 0.521 | 1.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.782 | 0.000 | -0.782 | 0.000 |
| predicted_SLG | 0.434 | 0.500 | 0.400 | Hitting_SLG | 0.502 | 0.667 | -0.002 | -0.167 |
| predicted_SO | 0.602 | 0.000 | 1.000 | Hitting_SO | 0.597 | 0.000 | -0.597 | 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_H: 0.7900 -> 2.0000 (boost 1.2100, better) |
| Biggest Deboost | predicted_SO: 0.6020 -> 0.0000 (deboost -0.6020, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.4750 -> 5.2176 (boost 1.7426, 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.4537 -> 0.4642 (boost 0.0105, better) | predicted_OBP: 0.3134 -> 0.2915 (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 | 6 | 2 | 4 | 1 | 5 | predicted_2B: 0.5702 -> 1.0000 (boost 0.4298, better) | predicted_H: 1.3506 -> 1.0000 (deboost -0.3506, worse) | AB rounded to 5 (raw=5.22), rates preserved: AVG=0.259 HR/AB=0.032 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.364) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7829 -> 1.0000 (boost 0.2171, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.2915 -> 0.2000 (deboost -0.0915, 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_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_2B: 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_OBP: 0.2000 -> 0.2915 (boost 0.0915, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "660688",
"player_name": "Keibert Ruiz",
"position": "C",
"team": "WAS",
"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.381,
"predicted_3B": 0.0,
"predicted_AB": 3.475,
"predicted_AVG": 0.257,
"predicted_BB": 0.085,
"predicted_H": 0.79,
"predicted_HR": 0.1,
"predicted_OBP": 0.314,
"predicted_R": 0.483,
"predicted_RBI": 0.51,
"predicted_SLG": 0.434,
"predicted_SO": 0.602
},
"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.5702,
"predicted_3B": 0.0009,
"predicted_AB": 5.2176,
"predicted_AVG": 0.2634,
"predicted_BB": 0.2389,
"predicted_H": 1.3305,
"predicted_HBP": 0.049,
"predicted_HR": 0.1629,
"predicted_OBP": 0.3134,
"predicted_R": 0.7645,
"predicted_RBI": 0.9785,
"predicted_SLG": 0.4537,
"predicted_SO": 0.8434
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.381,
"after": 0.5702,
"delta": 0.1892,
"percent_delta": 0.4966,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.475,
"after": 5.2176,
"delta": 1.7426,
"percent_delta": 0.5015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2634,
"delta": 0.0064,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.085,
"after": 0.2389,
"delta": 0.1539,
"percent_delta": 1.8106,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 1.3305,
"delta": 0.5405,
"percent_delta": 0.6842,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1629,
"delta": 0.0629,
"percent_delta": 0.629,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3134,
"delta": -0.0006,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.483,
"after": 0.7645,
"delta": 0.2815,
"percent_delta": 0.5828,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.9785,
"delta": 0.4685,
"percent_delta": 0.9186,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.434,
"after": 0.4537,
"delta": 0.0197,
"percent_delta": 0.0454,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.602,
"after": 0.8434,
"delta": 0.2414,
"percent_delta": 0.401,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.475,
"after": 5.2176,
"delta": 1.7426,
"percent_delta": 0.5015,
"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": 8,
"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.5702,
"predicted_3B": 0.0009,
"predicted_AB": 5.2176,
"predicted_AVG": 0.2589,
"predicted_BB": 0.2403,
"predicted_H": 1.3506,
"predicted_HBP": 0.049,
"predicted_HR": 0.1665,
"predicted_OBP": 0.2915,
"predicted_R": 0.7829,
"predicted_RBI": 1.0021,
"predicted_SLG": 0.4642,
"predicted_SO": 0.8384
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5702,
"after": 0.5702,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.2176,
"after": 5.2176,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2634,
"after": 0.2589,
"delta": -0.0045,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2389,
"after": 0.2403,
"delta": 0.0014,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3305,
"after": 1.3506,
"delta": 0.0201,
"percent_delta": 0.0151,
"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.1629,
"after": 0.1665,
"delta": 0.0036,
"percent_delta": 0.0221,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3134,
"after": 0.2915,
"delta": -0.0219,
"percent_delta": -0.0699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7645,
"after": 0.7829,
"delta": 0.0184,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9785,
"after": 1.0021,
"delta": 0.0236,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4537,
"after": 0.4642,
"delta": 0.0105,
"percent_delta": 0.0231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8434,
"after": 0.8384,
"delta": -0.005,
"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_SLG",
"before": 0.4537,
"after": 0.4642,
"delta": 0.0105,
"percent_delta": 0.0231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3134,
"after": 0.2915,
"delta": -0.0219,
"percent_delta": -0.0699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.22), rates preserved: AVG=0.259 HR/AB=0.032",
"stats": {
"predicted_2B": 1.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.5702,
"after": 1.0,
"delta": 0.4298,
"percent_delta": 0.7538,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.2176,
"after": 5.0,
"delta": -0.2176,
"percent_delta": -0.0417,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2403,
"after": 0.0,
"delta": -0.2403,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3506,
"after": 1.0,
"delta": -0.3506,
"percent_delta": -0.2596,
"direction": "deboost",
"projection_effect": "worse",
"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.1665,
"after": 0.0,
"delta": -0.1665,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0021,
"after": 1.0,
"delta": -0.0021,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8384,
"after": 1.0,
"delta": 0.1616,
"percent_delta": 0.1927,
"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_2B",
"before": 0.5702,
"after": 1.0,
"delta": 0.4298,
"percent_delta": 0.7538,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3506,
"after": 1.0,
"delta": -0.3506,
"percent_delta": -0.2596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.364)",
"stats": {
"predicted_2B": 1.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": 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_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.8927,
"bvp": 0.1073
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"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": 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_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7829,
"after": 1.0,
"delta": 0.2171,
"percent_delta": 0.2773,
"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.7829,
"after": 1.0,
"delta": 0.2171,
"percent_delta": 0.2773,
"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": 1.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.4,
"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.2589,
"after": 0.2,
"delta": -0.0589,
"percent_delta": -0.2275,
"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.2915,
"after": 0.2,
"delta": -0.0915,
"percent_delta": -0.3139,
"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.4642,
"after": 0.4,
"delta": -0.0642,
"percent_delta": -0.1383,
"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_OBP",
"before": 0.2915,
"after": 0.2,
"delta": -0.0915,
"percent_delta": -0.3139,
"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": 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": 1.0,
"after": 0.0,
"delta": -1.0,
"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": 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": 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": 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_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_2B",
"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.2589,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2915,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4642,
"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.2589,
"delta": 0.0589,
"percent_delta": 0.2943,
"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.2,
"after": 0.2915,
"delta": 0.0915,
"percent_delta": 0.4574,
"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.4,
"after": 0.4642,
"delta": 0.0642,
"percent_delta": 0.1605,
"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_OBP",
"before": 0.2,
"after": 0.2915,
"delta": 0.0915,
"percent_delta": 0.4574,
"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.381,
"after": 0.0,
"delta": -0.381,
"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.475,
"after": 4.0,
"delta": 0.525,
"percent_delta": 0.1511,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2589,
"delta": 0.0019,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.085,
"after": 0.0,
"delta": -0.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 2.0,
"delta": 1.21,
"percent_delta": 1.5316,
"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.314,
"after": 0.2915,
"delta": -0.0225,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.483,
"after": 1.0,
"delta": 0.517,
"percent_delta": 1.0704,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.434,
"after": 0.4642,
"delta": 0.0302,
"percent_delta": 0.0696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.602,
"after": 0.0,
"delta": -0.602,
"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_H",
"before": 0.79,
"after": 2.0,
"delta": 1.21,
"percent_delta": 1.5316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.602,
"after": 0.0,
"delta": -0.602,
"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.381 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.475 | - |
| predicted_AVG | 0.257 | - |
| predicted_BB | 0.085 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.483 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.434 | - |
| predicted_SO | 0.602 | - |
Final model 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.570 | 0.189 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.218 | 1.743 |
| predicted_AVG | 0.263 | 0.006 |
| predicted_BB | 0.239 | 0.154 |
| predicted_H | 1.331 | 0.540 |
| predicted_HBP | 0.049 | - |
| predicted_HR | 0.163 | 0.063 |
| predicted_OBP | 0.313 | -0.001 |
| predicted_R | 0.764 | 0.281 |
| predicted_RBI | 0.979 | 0.469 |
| predicted_SLG | 0.454 | 0.020 |
| predicted_SO | 0.843 | 0.241 |
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.570 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.218 | 0.000 |
| predicted_AVG | 0.259 | -0.005 |
| predicted_BB | 0.240 | 0.001 |
| predicted_H | 1.351 | 0.020 |
| predicted_HBP | 0.049 | 0.000 |
| predicted_HR | 0.167 | 0.004 |
| predicted_OBP | 0.291 | -0.022 |
| predicted_R | 0.783 | 0.018 |
| predicted_RBI | 1.002 | 0.024 |
| predicted_SLG | 0.464 | 0.011 |
| predicted_SO | 0.838 | -0.005 |
AB rounded to 5 (raw=5.22), rates preserved: AVG=0.259 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.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=11.0, weight=0.107, BvP AVG=0.364)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.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 | 1.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 | 1.000 | 0.430 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.218 |
| predicted_AVG | 0.200 | -0.059 |
| predicted_BB | 0.000 | -0.240 |
| predicted_H | 1.000 | -0.351 |
| predicted_HR | 0.000 | -0.167 |
| predicted_OBP | 0.200 | -0.091 |
| predicted_R | 1.000 | 0.217 |
| predicted_RBI | 1.000 | -0.002 |
| predicted_SLG | 0.400 | -0.064 |
| predicted_SO | 1.000 | 0.162 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.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 | 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 | - | 13.000 | 3.000 | 2.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 1.000 | 0.2308 | 0.3333 | 0.3846 | 0.2308 | 0.0000 | 0.1538 | 0.1538 | 0.0769 |
| last_10 | 0.20 | 8 | - | 32.000 | 13.000 | 2.000 | 0.000 | 1.000 | 9.000 | 7.000 | 2.000 | 5.000 | 0.4062 | 0.4412 | 0.5625 | 0.4062 | 0.0312 | 0.2812 | 0.0625 | 0.1562 |
| season | 0.60 | 40 | - | 410.000 | 107.000 | 45.000 | 0.000 | 18.000 | 93.000 | 57.000 | 10.000 | 71.000 | 0.2610 | 0.2801 | 0.5024 | 0.2610 | 0.0439 | 0.2268 | 0.0244 | 0.1732 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8200 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.5180 |
| predicted_AVG | 0.2719 |
| predicted_BB | 0.4420 |
| predicted_H | 2.0440 |
| predicted_HBP | 0.0490 |
| predicted_HR | 0.2460 |
| predicted_OBP | 0.3127 |
| predicted_R | 1.1360 |
| predicted_RBI | 1.5970 |
| predicted_SLG | 0.4797 |
| predicted_SO | 1.1620 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3810 | 0.8200 | 0.5702 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.4750 | 7.5180 | 5.2176 | model_form_blend |
| predicted_AVG | 0.2570 | 0.2719 | 0.2634 | model_form_blend |
| predicted_BB | 0.0850 | 0.4420 | 0.2389 | model_form_blend |
| predicted_H | 0.7900 | 2.0440 | 1.3305 | model_form_blend |
| predicted_HBP | - | 0.0490 | 0.0490 | form_only |
| predicted_HR | 0.1000 | 0.2460 | 0.1629 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3127 | 0.3134 | model_form_blend |
| predicted_R | 0.4830 | 1.1360 | 0.7645 | model_form_blend |
| predicted_RBI | 0.5100 | 1.5970 | 0.9785 | model_form_blend |
| predicted_SLG | 0.4340 | 0.4797 | 0.4537 | model_form_blend |
| predicted_SO | 0.6020 | 1.1620 | 0.8434 | 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 | 119 |
| Season rows before report date | 119 |
| Report year | 2026 |
| Profile rows used | 118 |
| 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.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 | 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 | 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 | C |
| gameID | 20260607_WAS@ARI |
| game_type | full |
| mlbID | 660688 |
| playerID | 660688 |
| playerName | Keibert Ruiz |
| pos | C |
| started | True |
| startingPosition | C |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-07 |
| sl_k_percent | 14.2 |
| sl_bb_percent | 3.0 |
| sl_woba | 0.344 |
| sl_xwoba | 0.264 |
| sl_xba | 0.219 |
| sl_xslg | 0.359 |
| sl_sweet_spot_percent | 31.8 |
| sl_barrel_batted_rate | 6.4 |
| sl_hard_hit_percent | 40.9 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 17.4 |
| sl_whiff_percent | 14.5 |
| sl_swing_percent | 49.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.218 | 1.000 | 0.000 | Hitting_2B | 0.214 | 1.000 | 0.786 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.992 | 3.000 | 4.000 | Hitting_AB | 2.944 | 5.000 | 0.056 | -2.000 |
| predicted_AVG | 0.263 | 0.333 | 0.250 | Hitting_AVG | 0.256 | 0.400 | 0.077 | -0.067 |
| predicted_BB | 0.331 | 1.000 | 0.000 | Hitting_BB | 0.325 | 1.000 | 0.675 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_H | 0.600 | 1.000 | 1.000 | Hitting_H | 0.754 | 2.000 | 0.246 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_OBP | 0.316 | 0.500 | 0.250 | Hitting_OBP | 0.345 | 0.500 | 0.155 | 0.000 |
| predicted_R | 0.532 | 0.000 | 1.000 | Hitting_R | 0.524 | 0.000 | -0.524 | 0.000 |
| predicted_RBI | 0.310 | 0.000 | 0.000 | Hitting_RBI | 0.190 | 3.000 | -0.190 | -3.000 |
| predicted_SLG | 0.352 | 0.667 | 0.250 | Hitting_SLG | 0.361 | 0.600 | 0.305 | 0.067 |
| predicted_SO | 0.419 | 0.000 | 1.000 | Hitting_SO | 0.413 | 1.000 | -0.413 | -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 | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_2B: 0.2180 -> 1.0000 (boost 0.7820, better) |
| Biggest Deboost | predicted_R: 0.5320 -> 0.0000 (deboost -0.5320, 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 | 10 | 8 | 2 | 7 | 3 | predicted_AB: 2.9920 -> 4.4723 (boost 1.4803, better) | predicted_AVG: 0.2630 -> 0.2550 (deboost -0.0080, 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.2550 -> 0.2311 (deboost -0.0239, 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_BB: 0.5229 -> 0.0000 (deboost -0.5229, worse) | AB rounded to 4 (raw=4.47), rates preserved: AVG=0.231 HR/AB=0.014 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7015 -> 1.0000 (boost 0.2985, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2311 -> 0.2500 (boost 0.0189, better) | predicted_SLG: 0.3405 -> 0.2500 (deboost -0.0905, 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_2B: 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.3405 (boost 0.0905, better) | predicted_AVG: 0.2500 -> 0.2311 (deboost -0.0189, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678391",
"player_name": "Jorbit Vivas",
"position": "3B",
"team": "WAS",
"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.218,
"predicted_3B": 0.0,
"predicted_AB": 2.992,
"predicted_AVG": 0.263,
"predicted_BB": 0.331,
"predicted_H": 0.6,
"predicted_HR": 0.06,
"predicted_OBP": 0.316,
"predicted_R": 0.532,
"predicted_RBI": 0.31,
"predicted_SLG": 0.352,
"predicted_SO": 0.419
},
"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.3064,
"predicted_3B": 0.0009,
"predicted_AB": 4.4723,
"predicted_AVG": 0.255,
"predicted_BB": 0.5198,
"predicted_H": 1.0181,
"predicted_HBP": 0.147,
"predicted_HR": 0.0591,
"predicted_OBP": 0.3239,
"predicted_R": 0.685,
"predicted_RBI": 0.4488,
"predicted_SLG": 0.3459,
"predicted_SO": 0.6927
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.218,
"after": 0.3064,
"delta": 0.0884,
"percent_delta": 0.4055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0009,
"delta": 0.0009,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.992,
"after": 4.4723,
"delta": 1.4803,
"percent_delta": 0.4948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.255,
"delta": -0.008,
"percent_delta": -0.0304,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.331,
"after": 0.5198,
"delta": 0.1888,
"percent_delta": 0.5704,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6,
"after": 1.0181,
"delta": 0.4181,
"percent_delta": 0.6968,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0591,
"delta": -0.0009,
"percent_delta": -0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.3239,
"delta": 0.0079,
"percent_delta": 0.025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.532,
"after": 0.685,
"delta": 0.153,
"percent_delta": 0.2876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.31,
"after": 0.4488,
"delta": 0.1388,
"percent_delta": 0.4477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.352,
"after": 0.3459,
"delta": -0.0061,
"percent_delta": -0.0173,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.419,
"after": 0.6927,
"delta": 0.2737,
"percent_delta": 0.6532,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.992,
"after": 4.4723,
"delta": 1.4803,
"percent_delta": 0.4948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.255,
"delta": -0.008,
"percent_delta": -0.0304,
"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": 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.3064,
"predicted_3B": 0.0009,
"predicted_AB": 4.4723,
"predicted_AVG": 0.2311,
"predicted_BB": 0.5229,
"predicted_H": 1.0335,
"predicted_HBP": 0.147,
"predicted_HR": 0.0604,
"predicted_OBP": 0.3116,
"predicted_R": 0.7015,
"predicted_RBI": 0.4596,
"predicted_SLG": 0.3405,
"predicted_SO": 0.6886
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3064,
"after": 0.3064,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4723,
"after": 4.4723,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2311,
"delta": -0.0239,
"percent_delta": -0.0937,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5198,
"after": 0.5229,
"delta": 0.0031,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0181,
"after": 1.0335,
"delta": 0.0154,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.147,
"after": 0.147,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0591,
"after": 0.0604,
"delta": 0.0013,
"percent_delta": 0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3239,
"after": 0.3116,
"delta": -0.0123,
"percent_delta": -0.038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.685,
"after": 0.7015,
"delta": 0.0165,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4488,
"after": 0.4596,
"delta": 0.0108,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3459,
"after": 0.3405,
"delta": -0.0054,
"percent_delta": -0.0156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6927,
"after": 0.6886,
"delta": -0.0041,
"percent_delta": -0.0059,
"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.255,
"after": 0.2311,
"delta": -0.0239,
"percent_delta": -0.0937,
"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.231 HR/AB=0.014",
"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.3064,
"after": 0.0,
"delta": -0.3064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4723,
"after": 4.0,
"delta": -0.4723,
"percent_delta": -0.1056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5229,
"after": 0.0,
"delta": -0.5229,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0335,
"after": 1.0,
"delta": -0.0335,
"percent_delta": -0.0324,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.147,
"after": 0.0,
"delta": -0.147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0604,
"after": 0.0,
"delta": -0.0604,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4596,
"after": 0.0,
"delta": -0.4596,
"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_BB",
"before": 0.5229,
"after": 0.0,
"delta": -0.5229,
"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.7015,
"after": 1.0,
"delta": 0.2985,
"percent_delta": 0.4255,
"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.7015,
"after": 1.0,
"delta": 0.2985,
"percent_delta": 0.4255,
"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.2311,
"after": 0.25,
"delta": 0.0189,
"percent_delta": 0.0818,
"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.3116,
"after": 0.25,
"delta": -0.0616,
"percent_delta": -0.1977,
"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.3405,
"after": 0.25,
"delta": -0.0905,
"percent_delta": -0.2658,
"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.2311,
"after": 0.25,
"delta": 0.0189,
"percent_delta": 0.0818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3405,
"after": 0.25,
"delta": -0.0905,
"percent_delta": -0.2658,
"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": 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": 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": 2,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 2,
"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": 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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2311,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3116,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3405,
"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.25,
"after": 0.2311,
"delta": -0.0189,
"percent_delta": -0.0757,
"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.3116,
"delta": 0.0616,
"percent_delta": 0.2463,
"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.3405,
"delta": 0.0905,
"percent_delta": 0.362,
"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.3405,
"delta": 0.0905,
"percent_delta": 0.362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2311,
"delta": -0.0189,
"percent_delta": -0.0757,
"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.218,
"after": 1.0,
"delta": 0.782,
"percent_delta": 3.5872,
"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.992,
"after": 3.0,
"delta": 0.008,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2311,
"delta": -0.0319,
"percent_delta": -0.1213,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.331,
"after": 1.0,
"delta": 0.669,
"percent_delta": 2.0211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6,
"after": 1.0,
"delta": 0.4,
"percent_delta": 0.6667,
"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.316,
"after": 0.3116,
"delta": -0.0044,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.532,
"after": 0.0,
"delta": -0.532,
"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.352,
"after": 0.3405,
"delta": -0.0115,
"percent_delta": -0.0327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.419,
"after": 0.0,
"delta": -0.419,
"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_2B",
"before": 0.218,
"after": 1.0,
"delta": 0.782,
"percent_delta": 3.5872,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.532,
"after": 0.0,
"delta": -0.532,
"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.218 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.992 | - |
| predicted_AVG | 0.263 | - |
| predicted_BB | 0.331 | - |
| predicted_H | 0.600 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.316 | - |
| predicted_R | 0.532 | - |
| predicted_RBI | 0.310 | - |
| predicted_SLG | 0.352 | - |
| predicted_SO | 0.419 | - |
Final model 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.306 | 0.088 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.472 | 1.480 |
| predicted_AVG | 0.255 | -0.008 |
| predicted_BB | 0.520 | 0.189 |
| predicted_H | 1.018 | 0.418 |
| predicted_HBP | 0.147 | - |
| predicted_HR | 0.059 | -0.001 |
| predicted_OBP | 0.324 | 0.008 |
| predicted_R | 0.685 | 0.153 |
| predicted_RBI | 0.449 | 0.139 |
| predicted_SLG | 0.346 | -0.006 |
| predicted_SO | 0.693 | 0.274 |
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.306 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.472 | 0.000 |
| predicted_AVG | 0.231 | -0.024 |
| predicted_BB | 0.523 | 0.003 |
| predicted_H | 1.034 | 0.015 |
| predicted_HBP | 0.147 | 0.000 |
| predicted_HR | 0.060 | 0.001 |
| predicted_OBP | 0.312 | -0.012 |
| predicted_R | 0.702 | 0.016 |
| predicted_RBI | 0.460 | 0.011 |
| predicted_SLG | 0.341 | -0.005 |
| predicted_SO | 0.689 | -0.004 |
AB rounded to 4 (raw=4.47), rates preserved: AVG=0.231 HR/AB=0.014
| 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.306 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.472 |
| predicted_AVG | 0.250 | 0.019 |
| predicted_BB | 0.000 | -0.523 |
| predicted_H | 1.000 | -0.034 |
| predicted_HR | 0.000 | -0.060 |
| predicted_OBP | 0.250 | -0.062 |
| predicted_R | 1.000 | 0.298 |
| predicted_RBI | 0.000 | -0.460 |
| predicted_SLG | 0.250 | -0.091 |
| predicted_SO | 1.000 | 0.311 |
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 | -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 | -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 | 4.000 | 1.000 | 0.000 | 0.000 | 3.000 | 1.000 | 2.000 | 3.000 | 0.2500 | 0.3333 | 0.3125 | 0.2500 | 0.0000 | 0.1875 | 0.1250 | 0.1875 |
| last_10 | 0.20 | 7 | - | 29.000 | 4.000 | 1.000 | 0.000 | 0.000 | 3.000 | 1.000 | 6.000 | 7.000 | 0.1379 | 0.2857 | 0.1724 | 0.1379 | 0.0000 | 0.1035 | 0.2069 | 0.2414 |
| season | 0.60 | 46 | - | 371.000 | 95.000 | 27.000 | 0.000 | 4.000 | 24.000 | 66.000 | 41.000 | 52.000 | 0.2561 | 0.3433 | 0.3612 | 0.2561 | 0.0108 | 0.0647 | 0.1105 | 0.1402 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4230 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.4260 |
| predicted_AVG | 0.2444 |
| predicted_BB | 0.7690 |
| predicted_H | 1.5700 |
| predicted_HBP | 0.1470 |
| predicted_HR | 0.0580 |
| predicted_OBP | 0.3343 |
| predicted_R | 0.8870 |
| predicted_RBI | 0.6320 |
| predicted_SLG | 0.3379 |
| predicted_SO | 1.0540 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2180 | 0.4230 | 0.3064 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 2.9920 | 6.4260 | 4.4723 | model_form_blend |
| predicted_AVG | 0.2630 | 0.2444 | 0.2550 | model_form_blend |
| predicted_BB | 0.3310 | 0.7690 | 0.5198 | model_form_blend |
| predicted_H | 0.6000 | 1.5700 | 1.0181 | model_form_blend |
| predicted_HBP | - | 0.1470 | 0.1470 | form_only |
| predicted_HR | 0.0600 | 0.0580 | 0.0591 | model_form_blend |
| predicted_OBP | 0.3160 | 0.3343 | 0.3239 | model_form_blend |
| predicted_R | 0.5320 | 0.8870 | 0.6850 | model_form_blend |
| predicted_RBI | 0.3100 | 0.6320 | 0.4488 | model_form_blend |
| predicted_SLG | 0.3520 | 0.3379 | 0.3459 | model_form_blend |
| predicted_SO | 0.4190 | 1.0540 | 0.6927 | 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 | 126 |
| Season rows before report date | 126 |
| Report year | 2026 |
| Profile rows used | 124 |
| 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.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 | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 3 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | 20260605_WAS@ARI |
| game_type | full |
| mlbID | 678391 |
| playerID | 678391 |
| playerName | Jorbit Vivas |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-05 |
| sl_k_percent | 14.5 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.298 |
| sl_xwoba | 0.282 |
| sl_xba | 0.229 |
| sl_xslg | 0.298 |
| sl_sweet_spot_percent | 27.7 |
| sl_barrel_batted_rate | 3.0 |
| sl_hard_hit_percent | 23.8 |
| sl_exit_velocity_avg | 83.1 |
| sl_launch_angle_avg | 14.2 |
| sl_whiff_percent | 17.4 |
| 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.041 | 0.000 | 0.000 | Hitting_2B | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 3.423 | 3.000 | 6.000 | Hitting_AB | 3.338 | 3.000 | -0.338 | 0.000 |
| predicted_AVG | 0.249 | 0.333 | 0.167 | Hitting_AVG | 0.195 | 0.333 | 0.138 | 0.000 |
| predicted_BB | 0.474 | 0.000 | 1.000 | Hitting_BB | 0.463 | 0.000 | -0.463 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 0.670 | 1.000 | 1.000 | Hitting_H | 0.652 | 1.000 | 0.348 | 0.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.297 | 0.250 | 0.286 | Hitting_OBP | 0.296 | 0.333 | -0.046 | -0.083 |
| predicted_R | 0.429 | 1.000 | 1.000 | Hitting_R | 0.428 | 0.000 | 0.572 | 1.000 |
| predicted_RBI | 0.330 | 1.000 | 1.000 | Hitting_RBI | 0.323 | 2.000 | 0.677 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.453 | 1.000 | -0.453 | -1.000 |
| predicted_SLG | 0.307 | 0.333 | 0.167 | Hitting_SLG | 0.219 | 0.333 | 0.114 | 0.000 |
| predicted_SO | 0.878 | 1.000 | 1.000 | Hitting_SO | 0.856 | 0.000 | 0.144 | 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_RBI: 0.3300 -> 1.0000 (boost 0.6700, better) |
| Biggest Deboost | predicted_BB: 0.4740 -> 0.0000 (deboost -0.4740, 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 | 7 | 1 | 6 | 2 | predicted_AB: 3.4230 -> 5.8860 (boost 2.4630, better) | predicted_SLG: 0.3070 -> 0.2915 (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_SLG: 0.2915 -> 0.2697 (deboost -0.0218, 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 | 4 | 2 | predicted_RBI: 0.6163 -> 1.0000 (boost 0.3837, better) | predicted_SO: 1.3817 -> 1.0000 (deboost -0.3817, better) | AB rounded to 6 (raw=5.89), rates preserved: AVG=0.229 HR/AB=0.005 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7172 -> 1.0000 (boost 0.2828, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.2697 -> 0.1670 (deboost -0.1027, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 0 | 2 | predicted_SF: 0.0000 -> 1.0000 (boost 1.0000, higher) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.2697 (boost 0.1027, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683083",
"player_name": "Nasim Nuñez",
"position": "2B",
"team": "WAS",
"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.041,
"predicted_3B": 0.02,
"predicted_AB": 3.423,
"predicted_AVG": 0.249,
"predicted_BB": 0.474,
"predicted_H": 0.67,
"predicted_HR": 0.04,
"predicted_OBP": 0.297,
"predicted_R": 0.429,
"predicted_RBI": 0.33,
"predicted_SLG": 0.307,
"predicted_SO": 0.878
},
"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.1033,
"predicted_3B": 0.0275,
"predicted_AB": 5.886,
"predicted_AVG": 0.2448,
"predicted_BB": 0.6382,
"predicted_H": 1.3255,
"predicted_HBP": 0.038,
"predicted_HR": 0.0273,
"predicted_OBP": 0.3017,
"predicted_R": 0.7003,
"predicted_RBI": 0.6018,
"predicted_SLG": 0.2915,
"predicted_SO": 1.3899
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.041,
"after": 0.1033,
"delta": 0.0623,
"percent_delta": 1.5195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0275,
"delta": 0.0075,
"percent_delta": 0.375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.423,
"after": 5.886,
"delta": 2.463,
"percent_delta": 0.7195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2448,
"delta": -0.0042,
"percent_delta": -0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.474,
"after": 0.6382,
"delta": 0.1642,
"percent_delta": 0.3464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 1.3255,
"delta": 0.6555,
"percent_delta": 0.9784,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0273,
"delta": -0.0127,
"percent_delta": -0.3175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.3017,
"delta": 0.0047,
"percent_delta": 0.0158,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.429,
"after": 0.7003,
"delta": 0.2713,
"percent_delta": 0.6324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.6018,
"delta": 0.2718,
"percent_delta": 0.8236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.307,
"after": 0.2915,
"delta": -0.0155,
"percent_delta": -0.0505,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.878,
"after": 1.3899,
"delta": 0.5119,
"percent_delta": 0.583,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.423,
"after": 5.886,
"delta": 2.463,
"percent_delta": 0.7195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.307,
"after": 0.2915,
"delta": -0.0155,
"percent_delta": -0.0505,
"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": 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.1033,
"predicted_3B": 0.0275,
"predicted_AB": 5.886,
"predicted_AVG": 0.2286,
"predicted_BB": 0.642,
"predicted_H": 1.3455,
"predicted_HBP": 0.038,
"predicted_HR": 0.0279,
"predicted_OBP": 0.3045,
"predicted_R": 0.7172,
"predicted_RBI": 0.6163,
"predicted_SLG": 0.2697,
"predicted_SO": 1.3817
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1033,
"after": 0.1033,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0275,
"after": 0.0275,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.886,
"after": 5.886,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2448,
"after": 0.2286,
"delta": -0.0162,
"percent_delta": -0.0662,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6382,
"after": 0.642,
"delta": 0.0038,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3255,
"after": 1.3455,
"delta": 0.02,
"percent_delta": 0.0151,
"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.0273,
"after": 0.0279,
"delta": 0.0006,
"percent_delta": 0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3017,
"after": 0.3045,
"delta": 0.0028,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7003,
"after": 0.7172,
"delta": 0.0169,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6018,
"after": 0.6163,
"delta": 0.0145,
"percent_delta": 0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2915,
"after": 0.2697,
"delta": -0.0218,
"percent_delta": -0.0748,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3899,
"after": 1.3817,
"delta": -0.0082,
"percent_delta": -0.0059,
"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.2915,
"after": 0.2697,
"delta": -0.0218,
"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 6 (raw=5.89), rates preserved: AVG=0.229 HR/AB=0.005",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.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.1033,
"after": 0.0,
"delta": -0.1033,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0275,
"after": 0.0,
"delta": -0.0275,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.886,
"after": 6.0,
"delta": 0.114,
"percent_delta": 0.0194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.642,
"after": 1.0,
"delta": 0.358,
"percent_delta": 0.5576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3455,
"after": 1.0,
"delta": -0.3455,
"percent_delta": -0.2568,
"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.0279,
"after": 0.0,
"delta": -0.0279,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6163,
"after": 1.0,
"delta": 0.3837,
"percent_delta": 0.6226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3817,
"after": 1.0,
"delta": -0.3817,
"percent_delta": -0.2763,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6163,
"after": 1.0,
"delta": 0.3837,
"percent_delta": 0.6226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3817,
"after": 1.0,
"delta": -0.3817,
"percent_delta": -0.2763,
"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": 6.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": 6.0,
"after": 6.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.7172,
"after": 1.0,
"delta": 0.2828,
"percent_delta": 0.3943,
"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.7172,
"after": 1.0,
"delta": 0.2828,
"percent_delta": 0.3943,
"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": 6.0,
"predicted_AVG": 0.167,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.167,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2286,
"after": 0.167,
"delta": -0.0616,
"percent_delta": -0.2695,
"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.3045,
"after": 0.286,
"delta": -0.0185,
"percent_delta": -0.0608,
"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.2697,
"after": 0.167,
"delta": -0.1027,
"percent_delta": -0.3808,
"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.2697,
"after": 0.167,
"delta": -0.1027,
"percent_delta": -0.3808,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "higher",
"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": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SF",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "higher",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.0,
"after": 3.0,
"delta": -3.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": 3.0,
"predicted_AVG": 0.2286,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3045,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 1.0,
"predicted_SLG": 0.2697,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.167,
"after": 0.2286,
"delta": 0.0616,
"percent_delta": 0.3688,
"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.286,
"after": 0.3045,
"delta": 0.0185,
"percent_delta": 0.0645,
"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": 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.167,
"after": 0.2697,
"delta": 0.1027,
"percent_delta": 0.615,
"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.167,
"after": 0.2697,
"delta": 0.1027,
"percent_delta": 0.615,
"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.041,
"after": 0.0,
"delta": -0.041,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.423,
"after": 3.0,
"delta": -0.423,
"percent_delta": -0.1236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2286,
"delta": -0.0204,
"percent_delta": -0.0819,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.474,
"after": 0.0,
"delta": -0.474,
"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.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.3045,
"delta": 0.0075,
"percent_delta": 0.0253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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": 1.0,
"delta": 0.67,
"percent_delta": 2.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.307,
"after": 0.2697,
"delta": -0.0373,
"percent_delta": -0.1215,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.878,
"after": 1.0,
"delta": 0.122,
"percent_delta": 0.139,
"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_RBI",
"before": 0.33,
"after": 1.0,
"delta": 0.67,
"percent_delta": 2.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.474,
"after": 0.0,
"delta": -0.474,
"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.041 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 3.423 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.474 | - |
| predicted_H | 0.670 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.297 | - |
| predicted_R | 0.429 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.307 | - |
| predicted_SO | 0.878 | - |
Final model 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.103 | 0.062 |
| predicted_3B | 0.028 | 0.007 |
| predicted_AB | 5.886 | 2.463 |
| predicted_AVG | 0.245 | -0.004 |
| predicted_BB | 0.638 | 0.164 |
| predicted_H | 1.325 | 0.655 |
| predicted_HBP | 0.038 | - |
| predicted_HR | 0.027 | -0.013 |
| predicted_OBP | 0.302 | 0.005 |
| predicted_R | 0.700 | 0.271 |
| predicted_RBI | 0.602 | 0.272 |
| predicted_SLG | 0.291 | -0.016 |
| predicted_SO | 1.390 | 0.512 |
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.103 | 0.000 |
| predicted_3B | 0.028 | 0.000 |
| predicted_AB | 5.886 | 0.000 |
| predicted_AVG | 0.229 | -0.016 |
| predicted_BB | 0.642 | 0.004 |
| predicted_H | 1.345 | 0.020 |
| predicted_HBP | 0.038 | 0.000 |
| predicted_HR | 0.028 | 0.001 |
| predicted_OBP | 0.304 | 0.003 |
| predicted_R | 0.717 | 0.017 |
| predicted_RBI | 0.616 | 0.014 |
| predicted_SLG | 0.270 | -0.022 |
| predicted_SO | 1.382 | -0.008 |
AB rounded to 6 (raw=5.89), rates preserved: AVG=0.229 HR/AB=0.005
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.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 | 6.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.103 |
| predicted_3B | 0.000 | -0.028 |
| predicted_AB | 6.000 | 0.114 |
| predicted_AVG | 0.167 | -0.062 |
| predicted_BB | 1.000 | 0.358 |
| predicted_H | 1.000 | -0.345 |
| predicted_HR | 0.000 | -0.028 |
| predicted_OBP | 0.286 | -0.019 |
| predicted_R | 1.000 | 0.283 |
| predicted_RBI | 1.000 | 0.384 |
| predicted_SLG | 0.167 | -0.103 |
| predicted_SO | 1.000 | -0.382 |
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 | -3.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 | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 1.000 | 1.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 | 7 | - | 33.000 | 9.000 | 4.000 | 0.000 | 0.000 | 2.000 | 5.000 | 0.000 | 7.000 | 0.2727 | 0.2727 | 0.3939 | 0.2727 | 0.0000 | 0.0606 | 0.0000 | 0.2121 |
| season | 0.60 | 56 | - | 671.000 | 131.000 | 8.000 | 4.000 | 0.000 | 65.000 | 84.000 | 93.000 | 172.000 | 0.1952 | 0.2957 | 0.2191 | 0.1952 | 0.0000 | 0.0969 | 0.1386 | 0.2563 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1830 |
| predicted_3B | 0.0370 |
| predicted_AB | 9.0330 |
| predicted_AVG | 0.2395 |
| predicted_BB | 0.8480 |
| predicted_H | 2.1630 |
| predicted_HBP | 0.0380 |
| predicted_HR | 0.0110 |
| predicted_OBP | 0.3078 |
| predicted_R | 1.0470 |
| predicted_RBI | 0.9490 |
| predicted_SLG | 0.2717 |
| predicted_SO | 2.0440 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0410 | 0.1830 | 0.1033 | model_form_blend |
| predicted_3B | 0.0200 | 0.0370 | 0.0275 | model_form_blend |
| predicted_AB | 3.4230 | 9.0330 | 5.8860 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2395 | 0.2448 | model_form_blend |
| predicted_BB | 0.4740 | 0.8480 | 0.6382 | model_form_blend |
| predicted_H | 0.6700 | 2.1630 | 1.3255 | model_form_blend |
| predicted_HBP | - | 0.0380 | 0.0380 | form_only |
| predicted_HR | 0.0400 | 0.0110 | 0.0273 | model_form_blend |
| predicted_OBP | 0.2970 | 0.3078 | 0.3017 | model_form_blend |
| predicted_R | 0.4290 | 1.0470 | 0.7003 | model_form_blend |
| predicted_RBI | 0.3300 | 0.9490 | 0.6018 | model_form_blend |
| predicted_SLG | 0.3070 | 0.2717 | 0.2915 | model_form_blend |
| predicted_SO | 0.8780 | 2.0440 | 1.3899 | 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 | 201 |
| Season rows before report date | 201 |
| Report year | 2026 |
| Profile rows used | 196 |
| 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 | 1 |
| SF | 1 |
| HBP | 0 |
| season_avg | 0.195 |
| 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 | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 2 |
| Hitting_SAC | 1 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| 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 | 20260606_WAS@ARI |
| game_type | full |
| mlbID | 683083 |
| playerID | 683083 |
| playerName | Nasim Nuñez |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-06 |
| sl_k_percent | 20.9 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.243 |
| sl_xwoba | 0.272 |
| sl_xba | 0.223 |
| sl_xslg | 0.27 |
| sl_sweet_spot_percent | 31.3 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 20.1 |
| sl_exit_velocity_avg | 84.6 |
| sl_launch_angle_avg | 8.8 |
| sl_whiff_percent | 22.9 |
| 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_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.789 | 3.000 | 0.211 | -2.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 0.316 | 0.000 | 1.684 | 2.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 0.947 | 0.000 | 3.053 | 4.000 |
| predicted_IP | 4.000 | 4.000 | 4.000 | Pitching_InningsPitched | 0.811 | 2.000 | 3.189 | 2.000 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 0.895 | 2.000 | 5.105 | 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: 5.0000 -> 4.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: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | 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. |
| 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": "663992",
"player_name": "Richard Lovelady",
"position": "Starter",
"team": "WAS",
"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": 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": 1.0,
"predicted_ER": 2.0,
"predicted_H": 4.0,
"predicted_HR": 1.0,
"predicted_IP": 4.0,
"predicted_SO": 6.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": 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.0,
"delta": -1.0,
"percent_delta": -0.2,
"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.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"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": 4.0,
"predicted_HR": 1.0,
"predicted_IP": 4.0,
"predicted_SO": 6.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": 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.0,
"after": 4.0,
"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": {}
},
{
"index": 4,
"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": 1.0,
"predicted_IP": 4.0,
"predicted_R": 2.0,
"predicted_SO": 6.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": 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.0,
"after": 4.0,
"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": 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": 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.0,
"delta": -1.0,
"percent_delta": -0.2,
"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.0,
"delta": -1.0,
"percent_delta": -0.2,
"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 | 4.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 | 1.000 | 0.000 |
| predicted_ER | 2.000 | 0.000 |
| predicted_H | 4.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 4.000 | -1.000 |
| predicted_SO | 6.000 | 0.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 | 4.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 4.000 | 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 | 4.100 | 3.000 | 5.000 | 5.000 | 3.000 | 1.000 | 6.2308 | 2.3077 | 0.6923 | 1.1539 | 1.1539 | 0.6923 | 0.2308 |
| last_10 | 0.35 | 10 | 9.000 | 5.000 | 10.000 | 7.000 | 6.000 | 2.000 | 5.0000 | 1.8889 | 0.5556 | 1.1111 | 0.7778 | 0.6667 | 0.2222 |
| season | 0.20 | 25 | 26.000 | 9.000 | 26.000 | 19.000 | 23.000 | 3.000 | 3.1154 | 1.7308 | 0.3462 | 1.0000 | 0.7308 | 0.8846 | 0.1154 |
| Metric | Value |
|---|---|
| predicted_BB | 1.9470 |
| predicted_ER | 1.5780 |
| predicted_ERA | 4.7755 |
| predicted_H | 3.0740 |
| predicted_HR | 0.5130 |
| predicted_IP | 3.0000 |
| predicted_SO | 2.4580 |
| predicted_WHIP | 1.6886 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.9470 | 1.4181 | model_form_blend |
| predicted_ER | 2.0000 | 1.5780 | 1.8137 | model_form_blend |
| predicted_ERA | - | 4.7755 | 4.7755 | form_only |
| predicted_H | 4.0000 | 3.0740 | 3.5911 | model_form_blend |
| predicted_HR | 1.0000 | 0.5130 | 0.7850 | model_form_blend |
| predicted_IP | 5.0000 | 3.0000 | 4.1000 | model_form_blend |
| predicted_SO | 6.0000 | 2.4580 | 4.4361 | model_form_blend |
| predicted_WHIP | - | 1.6886 | 1.6886 | 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 | 25 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 4.0 |
| H | 4 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 6 |
| HR | 1 |
| BF | 17 |
| Pitches | 66 |
| 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 | 9 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.12 |
| 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 | 2.0 |
| Pitching_Pitches | 41 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 23 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260602_MIA@WAS |
| game_type | full |
| mlbID | 663992 |
| playerID | 663992 |
| playerName | Richard Lovelady |
| pos | P |
| started | True |
| startingPosition | P |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-02 |
| sl_k_percent | 18.9 |
| sl_bb_percent | 15.6 |
| sl_woba | 0.357 |
| sl_xwoba | 0.353 |
| sl_sweet_spot_percent | 30.8 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 29.5 |
| sl_whiff_percent | 24.4 |
| sl_swing_percent | 43.5 |
| sl_avg_best_speed | 74.742651351 |
| sl_avg_hyper_speed | 93.487134795 |
| 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.526 | 0.000 | -0.526 | 0.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.579 | 0.000 | -1.579 | 0.000 |
| predicted_IP | 3.000 | 3.000 | 3.000 | Pitching_InningsPitched | 1.963 | 2.000 | 1.037 | 1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.789 | 1.000 | -1.789 | -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.3333 -> 3.0000 (boost 1.6667, 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.3333 -> 3.0000 (boost 1.6667, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "695418",
"player_name": "Brad Lord",
"position": "Middle Reliever",
"team": "WAS",
"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": 3.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.3333,
"after": 3.0,
"delta": 1.6667,
"percent_delta": 1.25,
"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.3333,
"after": 3.0,
"delta": 1.6667,
"percent_delta": 1.25,
"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.3333,
"after": 3.0,
"delta": 1.6667,
"percent_delta": 1.2501,
"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.3333,
"after": 3.0,
"delta": 1.6667,
"percent_delta": 1.2501,
"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.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 | 11.100 | 1.000 | 3.000 | 4.000 | 11.000 | 1.000 | 0.7941 | 0.6176 | 0.0882 | 0.2647 | 0.3529 | 0.9706 | 0.0882 |
| last_10 | 0.35 | 10 | 21.000 | 2.000 | 12.000 | 6.000 | 21.000 | 1.000 | 0.8571 | 0.8571 | 0.0952 | 0.5714 | 0.2857 | 1.0000 | 0.0476 |
| season | 0.20 | 19 | 40.100 | 11.000 | 30.000 | 10.000 | 34.000 | 4.000 | 2.4545 | 0.9917 | 0.2727 | 0.7438 | 0.2479 | 0.8430 | 0.0992 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6060 |
| predicted_ER | 0.4870 |
| predicted_ERA | 2.3883 |
| predicted_H | 1.2050 |
| predicted_HR | 0.1840 |
| predicted_IP | 2.0000 |
| predicted_SO | 1.7380 |
| predicted_WHIP | 0.9867 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.6060 | 0.2951 | model_form_blend |
| predicted_ER | 0.0000 | 0.4870 | 0.2372 | model_form_blend |
| predicted_ERA | - | 2.3883 | 2.3883 | form_only |
| predicted_H | 0.0000 | 1.2050 | 0.5869 | model_form_blend |
| predicted_HR | 0.0000 | 0.1840 | 0.0896 | model_form_blend |
| predicted_IP | 1.1000 | 2.0000 | 1.2000 | model_form_blend |
| predicted_SO | 0.0000 | 1.7380 | 0.8465 | model_form_blend |
| predicted_WHIP | - | 0.9867 | 0.9867 | 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 | 3.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 9 |
| Pitches | 30 |
| 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 | 2.45 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 4 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 2.0 |
| Pitching_Pitches | 24 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 16 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260606_WAS@ARI |
| game_type | full |
| mlbID | 695418 |
| playerID | 695418 |
| playerName | Brad Lord |
| pos | P |
| started | False |
| startingPosition | P |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-06 |
| sl_k_percent | 20.6 |
| sl_bb_percent | 6.1 |
| sl_woba | 0.252 |
| sl_xwoba | 0.297 |
| sl_sweet_spot_percent | 23.3 |
| sl_barrel_batted_rate | 5.2 |
| sl_hard_hit_percent | 43.1 |
| sl_whiff_percent | 23.0 |
| sl_swing_percent | 51.0 |
| sl_avg_best_speed | 76.049320175 |
| sl_avg_hyper_speed | 94.65912 |
| 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.812 | 1.000 | -0.812 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.375 | 2.000 | -0.375 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.625 | 3.000 | -0.625 | -3.000 |
| predicted_IP | 2.000 | 2.000 | 2.000 | Pitching_InningsPitched | 0.975 | 1.100 | 1.025 | 0.900 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.125 | 3.000 | -1.125 | -3.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 -> 2.0000 (boost 1.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 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "690925",
"player_name": "Clayton Beeter",
"position": "Middle Reliever",
"team": "WAS",
"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": 2.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": 2.0,
"delta": 1.0,
"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": 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": {}
}
],
"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": 2.0,
"delta": 1.0,
"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": 1.0,
"after": 2.0,
"delta": 1.0,
"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 | 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.200 | 2.000 | 5.000 | 4.000 | 7.000 | 0.000 | 3.1765 | 1.5882 | 0.3529 | 0.8823 | 0.7059 | 1.2353 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 4.000 | 8.000 | 9.000 | 14.000 | 1.000 | 3.4839 | 1.6452 | 0.3871 | 0.7742 | 0.8710 | 1.3548 | 0.0968 |
| season | 0.20 | 16 | 17.000 | 6.000 | 10.000 | 13.000 | 18.000 | 2.000 | 3.1765 | 1.3529 | 0.3529 | 0.5882 | 0.7647 | 1.0588 | 0.1177 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5300 |
| predicted_ER | 0.4370 |
| predicted_ERA | 3.9298 |
| predicted_H | 0.8880 |
| predicted_HR | 0.1060 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0580 |
| predicted_WHIP | 1.4180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5300 | 0.2105 | model_form_blend |
| predicted_ER | 0.0000 | 0.4370 | 0.1736 | model_form_blend |
| predicted_ERA | - | 3.9298 | 3.9298 | form_only |
| predicted_H | 0.0000 | 0.8880 | 0.3527 | model_form_blend |
| predicted_HR | 0.0000 | 0.1060 | 0.0421 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0580 | 0.4203 | model_form_blend |
| predicted_WHIP | - | 1.4180 | 1.4180 | 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 | 16 |
| Season rows before report date | 16 |
| Report year | 2026 |
| Profile rows used | 16 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 2.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| 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 | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 8 |
| Pitching_ER | 2 |
| Pitching_ERA | 3.18 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 28 |
| Pitching_R | 2 |
| Pitching_SO | 3 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260603_MIA@WAS |
| game_type | full |
| mlbID | 690925 |
| playerID | 690925 |
| playerName | Clayton Beeter |
| pos | P |
| started | False |
| startingPosition | P |
| team | WAS |
| teamID | 30 |
| game_date | 2026-06-03 |
| sl_k_percent | 24.3 |
| sl_bb_percent | 17.6 |
| sl_woba | 0.274 |
| sl_xwoba | 0.311 |
| sl_sweet_spot_percent | 21.4 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 47.6 |
| sl_whiff_percent | 25.2 |
| sl_swing_percent | 43.1 |
| sl_avg_best_speed | 82.287925238 |
| sl_avg_hyper_speed | 94.398503659 |
| Field | Value |
|---|---|
| Pitcher | Logan Webb |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1207 |
| ESPN Rank | 211 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0325 |
| Avg Velo | 89.1303 |
| Avg Spin | 2005.5376 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 4 |
| Pre H | 6 |
| Pre BB | 3 |
| Pre SO | 4 |
| Season ERA | 4.2472 |
| Season WHIP | 1.2640 |
| Role Avg IP | 5.9330 |
| Recent Avg IP | 5.8670 |
| Last Start IP | 7 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4267,
"runs_scored": 326.0,
"runs_allowed": 357.0,
"run_differential": -31.0,
"run_differential_per_game": -0.4133,
"avg_runs_scored": 4.3467,
"avg_runs_allowed": 4.76,
"offense_index": 0.9725,
"defense_index": 0.939,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.8,
"avg_runs_allowed": 6.2,
"run_differential": 6.0
},
"available": true,
"quality_score": -0.1132
},
"opponent": {
"team": "WAS",
"games": 72,
"wins": 34,
"losses": 38,
"win_pct": 0.4722,
"runs_scored": 359.0,
"runs_allowed": 367.0,
"run_differential": -8.0,
"run_differential_per_game": -0.1111,
"avg_runs_scored": 4.9861,
"avg_runs_allowed": 5.0972,
"offense_index": 1.1156,
"defense_index": 0.8769,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.8,
"avg_runs_allowed": 4.1,
"run_differential": 7.0
},
"available": true,
"quality_score": -0.0723
},
"edges": {
"quality_edge": -0.0409,
"offense_edge": -0.0275,
"opponent_offense_edge": 0.1156,
"defense_strength": -0.061,
"opponent_defense_weakness": 0.1231,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0266,
"strikeout": 0.9895
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "657277",
"profile": {
"available": true,
"pitcher_id": "657277",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 207.0,
"k_percent": 20.3,
"bb_percent": 7.6,
"woba": 0.305,
"xwoba": 0.315,
"sweet_spot_percent": 29.5,
"barrel_batted_rate": 5.7,
"hard_hit_percent": 45.5,
"avg_best_speed": 78.6912,
"avg_hyper_speed": 94.8886,
"whiff_percent": 20.6,
"swing_percent": 47.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.0412,
"command_and_miss": -0.3521,
"regression_edge": -0.2857,
"xwoba_edge": -0.0143,
"barrel_edge": 0.3111,
"hard_hit_edge": -0.9857,
"whiff_edge": -0.7429,
"bb_edge": 0.375,
"pitch_design_score": -0.0325
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "657277",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 87,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 87,
"pitch_usage": 0.0,
"release_speed": 89.13025424380471,
"release_spin_rate": 2005.537596612616,
"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": 87,
"pitch_usage": 0.0,
"release_speed": 89.13025424380471,
"release_spin_rate": 2005.537596612616,
"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.1303,
"release_spin_rate": 2005.5376,
"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.0325,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.232,
"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.1207,
"sample_weight": 0.828,
"run_prevention_factor": 1.0103,
"strikeout_factor": 0.9631,
"walk_factor": 0.9752,
"homer_factor": 1.0124,
"woba_minus_xwoba": -0.01,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657277",
"espn_id": 41216,
"player_name": "Logan Webb",
"team": "SF",
"role": "pitcher",
"espn_rank": 211,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 211,
"gp_value": 10.0,
"gp_rank": 375,
"gs_value": 10.0,
"gs_rank": 100,
"qs_value": 6.0,
"qs_rank": 26,
"era_value": 4.2471,
"era_rank": null,
"w_value": 3.0,
"w_rank": 87,
"l_value": 4.0,
"l_rank": 45,
"sv_value": 0.0,
"sv_rank": 162,
"hld_value": 0.0,
"hld_rank": 246,
"ip_value": 59.1,
"ip_rank": 92,
"h_value": 56.0,
"h_rank": 84,
"er_value": 28.0,
"er_rank": 78,
"hr_value": 4.0,
"hr_rank": 163,
"bb_value": 19.0,
"bb_rank": 98,
"k_value": 51.0,
"k_rank": 84,
"k_per_9_value": 7.7359548,
"k_per_9_rank": 24,
"whip_value": 1.264,
"whip_rank": null,
"war_value": 0.37,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0085,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.0085,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9795,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0103,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9694,
"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": 59.1,
"ER": 28,
"H": 56,
"BB": 19,
"SO": 51,
"HR": 4,
"ERA": 4.247191011235955,
"WHIP": 1.2640449438202248,
"K9": 7.735955056179776,
"HR9": 0.6067415730337079,
"games_pitched": 10,
"quality_starts": 6,
"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-03T00:00:00"
}{
"available": true,
"pitcher_id": "657277",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 87,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 87,
"pitch_usage": 0.0,
"release_speed": 89.13025424380471,
"release_spin_rate": 2005.537596612616,
"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": 87,
"pitch_usage": 0.0,
"release_speed": 89.13025424380471,
"release_spin_rate": 2005.537596612616,
"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.1303,
"release_spin_rate": 2005.5376,
"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.0325,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.232,
"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.5625,
"last_10": 0.43749999999999994
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 10.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6667,
"prior_weight": 0.3333
},
"role": "pitcher",
"player_id": "657277",
"report_date": "20260608_W",
"season_year": 2026,
"rows_used": 10,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 29.1,
"ER": 11.0,
"R": 11.0,
"H": 25.0,
"BB": 8.0,
"SO": 24.0,
"HR": 2.0,
"BF": 119.0,
"Pitches": 433.0
},
"per_game": {
"IP": 6.0,
"ER": 2.2,
"R": 2.2,
"H": 5.0,
"BB": 1.6,
"SO": 4.8,
"HR": 0.4,
"BF": 23.8,
"Pitches": 86.6
},
"rates": {
"ERA": 3.375,
"WHIP": 1.125,
"ER_per_IP": 0.375,
"H_per_IP": 0.85227,
"BB_per_IP": 0.27273,
"SO_per_IP": 0.81818,
"HR_per_IP": 0.06818
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 59.1,
"ER": 28.0,
"R": 30.0,
"H": 56.0,
"BB": 19.0,
"SO": 51.0,
"HR": 4.0,
"BF": 251.0,
"Pitches": 912.0
},
"per_game": {
"IP": 6.0,
"ER": 2.8,
"R": 3.0,
"H": 5.6,
"BB": 1.9,
"SO": 5.1,
"HR": 0.4,
"BF": 25.1,
"Pitches": 91.2
},
"rates": {
"ERA": 4.2472,
"WHIP": 1.264,
"ER_per_IP": 0.47191,
"H_per_IP": 0.94382,
"BB_per_IP": 0.32022,
"SO_per_IP": 0.85955,
"HR_per_IP": 0.06742
}
},
"season": {
"games": 10,
"totals": {
"IP": 59.1,
"ER": 28.0,
"R": 30.0,
"H": 56.0,
"BB": 19.0,
"SO": 51.0,
"HR": 4.0,
"BF": 251.0,
"Pitches": 912.0
},
"per_game": {
"IP": 6.0,
"ER": 2.8,
"R": 3.0,
"H": 5.6,
"BB": 1.9,
"SO": 5.1,
"HR": 0.4,
"BF": 25.1,
"Pitches": 91.2
},
"rates": {
"ERA": 4.2472,
"WHIP": 1.264,
"ER_per_IP": 0.47191,
"H_per_IP": 0.94382,
"BB_per_IP": 0.32022,
"SO_per_IP": 0.85955,
"HR_per_IP": 0.06742
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 2.639,
"predicted_H": 5.484,
"predicted_BB": 1.903,
"predicted_SO": 5.214,
"predicted_HR": 0.55,
"predicted_ERA": 3.9588,
"predicted_WHIP": 1.2312
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4908,
"form_weight": 0.5092,
"form_reliability": 0.6667,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 10.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6667,
"prior_weight": 0.3333
},
"applied_metrics": {
"predicted_IP": {
"model": 6.0,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 4.0,
"form": 2.639,
"final": 3.307,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 5.484,
"final": 5.7373,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 1.903,
"final": 2.4414,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 5.214,
"final": 4.6181,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 2.0,
"form": 0.55,
"final": 1.2617,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9588,
"final": 3.9588,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2312,
"final": 1.2312,
"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 | Keaton Winn |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2668 |
| ESPN Rank | 145 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1587 |
| Avg Velo | 92.5436 |
| Avg Spin | 1915.2713 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.4000 |
| Season WHIP | 0.9000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4267,
"runs_scored": 326.0,
"runs_allowed": 357.0,
"run_differential": -31.0,
"run_differential_per_game": -0.4133,
"avg_runs_scored": 4.3467,
"avg_runs_allowed": 4.76,
"offense_index": 0.9725,
"defense_index": 0.939,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.8,
"avg_runs_allowed": 6.2,
"run_differential": 6.0
},
"available": true,
"quality_score": -0.1132
},
"opponent": {
"team": "WAS",
"games": 72,
"wins": 34,
"losses": 38,
"win_pct": 0.4722,
"runs_scored": 359.0,
"runs_allowed": 367.0,
"run_differential": -8.0,
"run_differential_per_game": -0.1111,
"avg_runs_scored": 4.9861,
"avg_runs_allowed": 5.0972,
"offense_index": 1.1156,
"defense_index": 0.8769,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.8,
"avg_runs_allowed": 4.1,
"run_differential": 7.0
},
"available": true,
"quality_score": -0.0723
},
"edges": {
"quality_edge": -0.0409,
"offense_edge": -0.0275,
"opponent_offense_edge": 0.1156,
"defense_strength": -0.061,
"opponent_defense_weakness": 0.1231,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0266,
"strikeout": 0.9895
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676775",
"profile": {
"available": true,
"pitcher_id": "676775",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 85.0,
"k_percent": 22.1,
"bb_percent": 8.0,
"woba": 0.234,
"xwoba": 0.271,
"sweet_spot_percent": 31.6,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 26.6,
"avg_best_speed": 74.669,
"avg_hyper_speed": 92.4252,
"whiff_percent": 24.9,
"swing_percent": 49.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.244,
"command_and_miss": -0.0414,
"regression_edge": -1.0571,
"xwoba_edge": 1.2429,
"barrel_edge": 0.7333,
"hard_hit_edge": 1.7143,
"whiff_edge": -0.1286,
"bb_edge": 0.275,
"pitch_design_score": 0.1587
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676775",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 20,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 20,
"pitch_usage": 0.0,
"release_speed": 92.54362711575556,
"release_spin_rate": 1915.2712786040493,
"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": 20,
"pitch_usage": 0.0,
"release_speed": 92.54362711575556,
"release_spin_rate": 1915.2712786040493,
"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.5436,
"release_spin_rate": 1915.2713,
"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.1587,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1334,
"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.2668,
"sample_weight": 0.45,
"run_prevention_factor": 0.9773,
"strikeout_factor": 0.9956,
"walk_factor": 0.9901,
"homer_factor": 0.926,
"woba_minus_xwoba": -0.037,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "676775",
"espn_id": 5116843,
"player_name": "Keaton Winn",
"team": "SF",
"role": "pitcher",
"espn_rank": 145,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 145,
"gp_value": 28.0,
"gp_rank": 39,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.4,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 1.0,
"l_rank": 249,
"sv_value": 1.0,
"sv_rank": 78,
"hld_value": 11.0,
"hld_rank": 8,
"ip_value": 30.0,
"ip_rank": 198,
"h_value": 18.0,
"h_rank": 323,
"er_value": 8.0,
"er_rank": 349,
"hr_value": 2.0,
"hr_rank": 282,
"bb_value": 9.0,
"bb_rank": 298,
"k_value": 25.0,
"k_rank": 270,
"k_per_9_value": 7.5,
"k_per_9_rank": 36,
"whip_value": 0.9,
"whip_rank": null,
"war_value": 0.64,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9898,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9898,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9955,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9667,
"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": 12.2,
"ER": 3,
"H": 10,
"BB": 3,
"SO": 11,
"HR": 2,
"ERA": 2.131578947368421,
"WHIP": 1.026315789473684,
"K9": 7.81578947368421,
"HR9": 1.4210526315789473,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "676775",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 20,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 20,
"pitch_usage": 0.0,
"release_speed": 92.54362711575556,
"release_spin_rate": 1915.2712786040493,
"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": 20,
"pitch_usage": 0.0,
"release_speed": 92.54362711575556,
"release_spin_rate": 1915.2712786040493,
"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.5436,
"release_spin_rate": 1915.2713,
"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.1587,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1334,
"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.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"role": "pitcher",
"player_id": "676775",
"report_date": "20260608_W",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.2,
"ER": 3.0,
"R": 4.0,
"H": 7.0,
"BB": 1.0,
"SO": 4.0,
"HR": 2.0,
"BF": 27.0,
"Pitches": 86.0
},
"per_game": {
"IP": 1.1,
"ER": 0.6,
"R": 0.8,
"H": 1.4,
"BB": 0.2,
"SO": 0.8,
"HR": 0.4,
"BF": 5.4,
"Pitches": 17.2
},
"rates": {
"ERA": 4.05,
"WHIP": 1.2,
"ER_per_IP": 0.45,
"H_per_IP": 1.05,
"BB_per_IP": 0.15,
"SO_per_IP": 0.6,
"HR_per_IP": 0.3
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 12.2,
"ER": 3.0,
"R": 4.0,
"H": 10.0,
"BB": 3.0,
"SO": 11.0,
"HR": 2.0,
"BF": 49.0,
"Pitches": 172.0
},
"per_game": {
"IP": 1.1,
"ER": 0.3,
"R": 0.4,
"H": 1.0,
"BB": 0.3,
"SO": 1.1,
"HR": 0.2,
"BF": 4.9,
"Pitches": 17.2
},
"rates": {
"ERA": 2.1316,
"WHIP": 1.0263,
"ER_per_IP": 0.23684,
"H_per_IP": 0.78947,
"BB_per_IP": 0.23684,
"SO_per_IP": 0.86842,
"HR_per_IP": 0.15789
}
},
"season": {
"games": 28,
"totals": {
"IP": 30.0,
"ER": 8.0,
"R": 9.0,
"H": 18.0,
"BB": 9.0,
"SO": 25.0,
"HR": 2.0,
"BF": 113.0,
"Pitches": 418.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2857,
"R": 0.3214,
"H": 0.6429,
"BB": 0.3214,
"SO": 0.8929,
"HR": 0.0714,
"BF": 4.0357,
"Pitches": 14.9286
},
"rates": {
"ERA": 2.4,
"WHIP": 0.9,
"ER_per_IP": 0.26667,
"H_per_IP": 0.6,
"BB_per_IP": 0.3,
"SO_per_IP": 0.83333,
"HR_per_IP": 0.06667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.526,
"predicted_H": 1.18,
"predicted_BB": 0.364,
"predicted_SO": 1.076,
"predicted_HR": 0.226,
"predicted_ERA": 3.6504,
"predicted_WHIP": 1.1903
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5434,
"form_weight": 0.4566,
"form_reliability": 0.5423,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.924,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5423,
"prior_weight": 0.4577
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.526,
"final": 0.2402,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.18,
"final": 1.0822,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.364,
"final": 0.1662,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.076,
"final": 0.4913,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.226,
"final": 0.1032,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6504,
"final": 3.6504,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1903,
"final": 1.1903,
"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.0140 |
| ESPN Rank | 210 |
| 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.3371 |
| Season WHIP | 1.1798 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4267,
"runs_scored": 326.0,
"runs_allowed": 357.0,
"run_differential": -31.0,
"run_differential_per_game": -0.4133,
"avg_runs_scored": 4.3467,
"avg_runs_allowed": 4.76,
"offense_index": 0.9725,
"defense_index": 0.939,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.8,
"avg_runs_allowed": 6.2,
"run_differential": 6.0
},
"available": true,
"quality_score": -0.1132
},
"opponent": {
"team": "WAS",
"games": 72,
"wins": 34,
"losses": 38,
"win_pct": 0.4722,
"runs_scored": 359.0,
"runs_allowed": 367.0,
"run_differential": -8.0,
"run_differential_per_game": -0.1111,
"avg_runs_scored": 4.9861,
"avg_runs_allowed": 5.0972,
"offense_index": 1.1156,
"defense_index": 0.8769,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.8,
"avg_runs_allowed": 4.1,
"run_differential": 7.0
},
"available": true,
"quality_score": -0.0723
},
"edges": {
"quality_edge": -0.0409,
"offense_edge": -0.0275,
"opponent_offense_edge": 0.1156,
"defense_strength": -0.061,
"opponent_defense_weakness": 0.1231,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0266,
"strikeout": 0.9895
},
"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": 25.8,
"bb_percent": 12.1,
"woba": 0.278,
"xwoba": 0.312,
"sweet_spot_percent": 30.7,
"barrel_batted_rate": 8.0,
"hard_hit_percent": 38.7,
"avg_best_speed": 76.518,
"avg_hyper_speed": 93.7236,
"whiff_percent": 26.6,
"swing_percent": 47.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1935,
"command_and_miss": 0.0764,
"regression_edge": -0.9714,
"xwoba_edge": 0.0714,
"barrel_edge": -0.2,
"hard_hit_edge": -0.0143,
"whiff_edge": 0.1143,
"bb_edge": -0.75,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "668873",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.014,
"sample_weight": 0.45,
"run_prevention_factor": 0.9988,
"strikeout_factor": 1.0095,
"walk_factor": 1.027,
"homer_factor": 1.0065,
"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": 210,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 210,
"gp_value": 28.0,
"gp_rank": 39,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.337,
"era_rank": null,
"w_value": 2.0,
"w_rank": 163,
"l_value": 3.0,
"l_rank": 90,
"sv_value": 4.0,
"sv_rank": 27,
"hld_value": 3.0,
"hld_rank": 129,
"ip_value": 29.2,
"ip_rank": 206,
"h_value": 20.0,
"h_rank": 291,
"er_value": 11.0,
"er_rank": 253,
"hr_value": 5.0,
"hr_rank": 132,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 32.0,
"k_rank": 190,
"k_per_9_value": 9.707865,
"k_per_9_rank": 24,
"whip_value": 1.1797,
"whip_rank": null,
"war_value": 0.38,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9995,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9995,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0121,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0029,
"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": 8,
"H": 11,
"BB": 3,
"SO": 13,
"HR": 3,
"ERA": 6.967741935483872,
"WHIP": 1.3548387096774195,
"K9": 11.322580645161292,
"HR9": 2.612903225806452,
"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-07T00: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": 5.858,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5395,
"prior_weight": 0.4605
},
"role": "pitcher",
"player_id": "668873",
"report_date": "20260608_W",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 3.0,
"SO": 5.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 71.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 4.0,
"Pitches": 14.2
},
"rates": {
"ERA": 0.0,
"WHIP": 1.2857,
"ER_per_IP": 0.0,
"H_per_IP": 0.64286,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 8.0,
"R": 9.0,
"H": 11.0,
"BB": 3.0,
"SO": 13.0,
"HR": 3.0,
"BF": 45.0,
"Pitches": 160.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.9,
"H": 1.1,
"BB": 0.3,
"SO": 1.3,
"HR": 0.3,
"BF": 4.5,
"Pitches": 16.0
},
"rates": {
"ERA": 6.9677,
"WHIP": 1.3548,
"ER_per_IP": 0.77419,
"H_per_IP": 1.06452,
"BB_per_IP": 0.29032,
"SO_per_IP": 1.25806,
"HR_per_IP": 0.29032
}
},
"season": {
"games": 28,
"totals": {
"IP": 29.2,
"ER": 11.0,
"R": 13.0,
"H": 20.0,
"BB": 15.0,
"SO": 32.0,
"HR": 5.0,
"BF": 124.0,
"Pitches": 463.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3929,
"R": 0.4643,
"H": 0.7143,
"BB": 0.5357,
"SO": 1.1429,
"HR": 0.1786,
"BF": 4.4286,
"Pitches": 16.5357
},
"rates": {
"ERA": 3.3371,
"WHIP": 1.1798,
"ER_per_IP": 0.37079,
"H_per_IP": 0.67416,
"BB_per_IP": 0.50562,
"SO_per_IP": 1.07865,
"HR_per_IP": 0.16854
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.409,
"predicted_H": 0.871,
"predicted_BB": 0.433,
"predicted_SO": 1.044,
"predicted_HR": 0.137,
"predicted_ERA": 3.6851,
"predicted_WHIP": 1.304
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5446,
"form_weight": 0.4554,
"form_reliability": 0.5395,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.858,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5395,
"prior_weight": 0.4605
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.409,
"final": 0.1863,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.871,
"final": 0.3967,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.433,
"final": 0.1972,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.044,
"final": 1.02,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.137,
"final": 0.0624,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6851,
"final": 3.6851,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.304,
"final": 1.304,
"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.1834 |
| ESPN Rank | 289 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1346 |
| Avg Velo | 92.1146 |
| Avg Spin | 2396.2111 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 3.7241 |
| Season WHIP | 1.5517 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4267,
"runs_scored": 326.0,
"runs_allowed": 357.0,
"run_differential": -31.0,
"run_differential_per_game": -0.4133,
"avg_runs_scored": 4.3467,
"avg_runs_allowed": 4.76,
"offense_index": 0.9725,
"defense_index": 0.939,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.8,
"avg_runs_allowed": 6.2,
"run_differential": 6.0
},
"available": true,
"quality_score": -0.1132
},
"opponent": {
"team": "WAS",
"games": 72,
"wins": 34,
"losses": 38,
"win_pct": 0.4722,
"runs_scored": 359.0,
"runs_allowed": 367.0,
"run_differential": -8.0,
"run_differential_per_game": -0.1111,
"avg_runs_scored": 4.9861,
"avg_runs_allowed": 5.0972,
"offense_index": 1.1156,
"defense_index": 0.8769,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.8,
"avg_runs_allowed": 4.1,
"run_differential": 7.0
},
"available": true,
"quality_score": -0.0723
},
"edges": {
"quality_edge": -0.0409,
"offense_edge": -0.0275,
"opponent_offense_edge": 0.1156,
"defense_strength": -0.061,
"opponent_defense_weakness": 0.1231,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 0.9919,
"run_prevention": 1.0266,
"strikeout": 0.9895
},
"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": 31.0,
"bb_percent": 17.2,
"woba": 0.315,
"xwoba": 0.3,
"sweet_spot_percent": 34.1,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 29.5,
"avg_best_speed": 69.5257,
"avg_hyper_speed": 92.7283,
"whiff_percent": 33.1,
"swing_percent": 36.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.9,
"bb_percent": 9.1,
"woba": 0.308,
"xwoba": 0.3145,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.6,
"avg_best_speed": 77.9051,
"avg_hyper_speed": 93.9929,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.4088,
"command_and_miss": 0.4807,
"regression_edge": 0.4286,
"xwoba_edge": 0.4143,
"barrel_edge": 0.0667,
"hard_hit_edge": 1.3,
"whiff_edge": 1.0429,
"bb_edge": -2.025,
"pitch_design_score": 0.1346
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669062",
"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.11462544936303,
"release_spin_rate": 2396.2110663291955,
"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.11462544936303,
"release_spin_rate": 2396.2110663291955,
"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.1146,
"release_spin_rate": 2396.2111,
"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.1346,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9618,
"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.1834,
"sample_weight": 0.45,
"run_prevention_factor": 0.9844,
"strikeout_factor": 1.0396,
"walk_factor": 1.0729,
"homer_factor": 0.9686,
"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": 289,
"espn_total_ranked": 682,
"metrics": {
"espn_rank": 289,
"gp_value": 22.0,
"gp_rank": 132,
"gs_value": 0.0,
"gs_rank": 277,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.7241,
"era_rank": null,
"w_value": 0.0,
"w_rank": 382,
"l_value": 0.0,
"l_rank": 408,
"sv_value": 2.0,
"sv_rank": 51,
"hld_value": 8.0,
"hld_rank": 30,
"ip_value": 19.1,
"ip_rank": 359,
"h_value": 15.0,
"h_rank": 376,
"er_value": 8.0,
"er_rank": 349,
"hr_value": 1.0,
"hr_rank": 405,
"bb_value": 15.0,
"bb_rank": 168,
"k_value": 27.0,
"k_rank": 242,
"k_per_9_value": 12.568966,
"k_per_9_rank": 18,
"whip_value": 1.5517,
"whip_rank": null,
"war_value": 0.15,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.993,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.993,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0328,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9859,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0178,
"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": 4,
"H": 7,
"BB": 9,
"SO": 10,
"HR": 1,
"ERA": 4.5,
"WHIP": 2.0,
"K9": 11.25,
"HR9": 1.125,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "669062",
"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.11462544936303,
"release_spin_rate": 2396.2110663291955,
"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.11462544936303,
"release_spin_rate": 2396.2110663291955,
"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.1146,
"release_spin_rate": 2396.2111,
"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.1346,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9618,
"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.818,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.433,
"prior_weight": 0.567
},
"role": "pitcher",
"player_id": "669062",
"report_date": "20260608_W",
"season_year": 2026,
"rows_used": 22,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 0.0,
"R": 0.0,
"H": 6.0,
"BB": 2.0,
"SO": 4.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 79.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.0,
"H": 1.2,
"BB": 0.4,
"SO": 0.8,
"HR": 0.0,
"BF": 3.8,
"Pitches": 15.8
},
"rates": {
"ERA": 0.0,
"WHIP": 2.0,
"ER_per_IP": 0.0,
"H_per_IP": 1.5,
"BB_per_IP": 0.5,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.0,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 9.0,
"SO": 10.0,
"HR": 1.0,
"BF": 39.0,
"Pitches": 177.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 0.7,
"BB": 0.9,
"SO": 1.0,
"HR": 0.1,
"BF": 3.9,
"Pitches": 17.7
},
"rates": {
"ERA": 4.5,
"WHIP": 2.0,
"ER_per_IP": 0.5,
"H_per_IP": 0.875,
"BB_per_IP": 1.125,
"SO_per_IP": 1.25,
"HR_per_IP": 0.125
}
},
"season": {
"games": 22,
"totals": {
"IP": 19.1,
"ER": 8.0,
"R": 8.0,
"H": 15.0,
"BB": 15.0,
"SO": 27.0,
"HR": 1.0,
"BF": 87.0,
"Pitches": 412.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3636,
"R": 0.3636,
"H": 0.6818,
"BB": 0.6818,
"SO": 1.2273,
"HR": 0.0455,
"BF": 3.9545,
"Pitches": 18.7273
},
"rates": {
"ERA": 3.7241,
"WHIP": 1.5517,
"ER_per_IP": 0.41379,
"H_per_IP": 0.77586,
"BB_per_IP": 0.77586,
"SO_per_IP": 1.39655,
"HR_per_IP": 0.05172
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.269,
"predicted_H": 0.72,
"predicted_BB": 0.377,
"predicted_SO": 0.72,
"predicted_HR": 0.071,
"predicted_ERA": 3.4785,
"predicted_WHIP": 1.5767
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5896,
"form_weight": 0.4104,
"form_reliability": 0.433,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.818,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.433,
"prior_weight": 0.567
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.269,
"final": 0.1104,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.72,
"final": 1.4746,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.377,
"final": 0.1547,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.72,
"final": 0.2955,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.071,
"final": 0.0291,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4785,
"final": 3.4785,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5767,
"final": 1.5767,
"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.324 | 1.000 | 0.000 | Hitting_2B | 0.324 | 0.000 | 0.676 | 1.000 |
| predicted_3B | 0.021 | 0.000 | 0.000 | Hitting_3B | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_AB | 4.320 | 4.000 | 7.000 | Hitting_AB | 4.187 | 4.000 | -0.187 | 0.000 |
| predicted_AVG | 0.226 | 0.500 | 0.286 | Hitting_AVG | 0.254 | 0.000 | 0.246 | 0.500 |
| predicted_BB | 0.191 | 0.000 | 0.000 | Hitting_BB | 0.191 | 0.000 | -0.191 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_H | 0.980 | 2.000 | 2.000 | Hitting_H | 1.062 | 0.000 | 0.938 | 2.000 |
| predicted_HR | 0.210 | 1.000 | 0.000 | Hitting_HR | 0.141 | 0.000 | 0.859 | 1.000 |
| predicted_OBP | 0.303 | 0.500 | 0.286 | Hitting_OBP | 0.289 | 0.000 | 0.211 | 0.500 |
| predicted_R | 0.535 | 1.000 | 1.000 | Hitting_R | 0.535 | 0.000 | 0.465 | 1.000 |
| predicted_RBI | 0.630 | 2.000 | 1.000 | Hitting_RBI | 0.402 | 0.000 | 1.598 | 2.000 |
| predicted_SLG | 0.447 | 1.500 | 0.286 | Hitting_SLG | 0.442 | 0.000 | 1.058 | 1.500 |
| predicted_SO | 1.216 | 0.000 | 2.000 | Hitting_SO | 1.216 | 3.000 | -1.216 | -3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 4 |
| Better Metrics | 8 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_RBI: 0.6300 -> 2.0000 (boost 1.3700, better) |
| Biggest Deboost | predicted_SO: 1.2160 -> 0.0000 (deboost -1.2160, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.3200 -> 7.1768 (boost 2.8568, 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.4679 -> 0.4851 (boost 0.0172, better) | predicted_OBP: 0.3021 -> 0.2894 (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 | 7 | 1 | 6 | 2 | 5 | predicted_H: 1.7143 -> 2.0000 (boost 0.2857, better) | predicted_BB: 0.5107 -> 0.0000 (deboost -0.5107, worse) | AB rounded to 7 (raw=7.18), rates preserved: AVG=0.239 HR/AB=0.058 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0988 -> 1.0000 (deboost -0.0988, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2389 -> 0.2860 (boost 0.0471, better) | predicted_SLG: 0.4851 -> 0.2860 (deboost -0.1991, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 3 | 2 | 4 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2860 -> 0.4851 (boost 0.1991, better) | predicted_AVG: 0.2860 -> 0.2389 (deboost -0.0471, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "642715",
"player_name": "Willy Adames",
"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.324,
"predicted_3B": 0.021,
"predicted_AB": 4.32,
"predicted_AVG": 0.226,
"predicted_BB": 0.191,
"predicted_H": 0.98,
"predicted_HR": 0.21,
"predicted_OBP": 0.303,
"predicted_R": 0.535,
"predicted_RBI": 0.63,
"predicted_SLG": 0.447,
"predicted_SO": 1.216
},
"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.4751,
"predicted_3B": 0.0259,
"predicted_AB": 7.1768,
"predicted_AVG": 0.233,
"predicted_BB": 0.5119,
"predicted_H": 1.6999,
"predicted_HBP": 0.028,
"predicted_HR": 0.4106,
"predicted_OBP": 0.3021,
"predicted_R": 1.0857,
"predicted_RBI": 1.1484,
"predicted_SLG": 0.4679,
"predicted_SO": 2.1251
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.324,
"after": 0.4751,
"delta": 0.1511,
"percent_delta": 0.4664,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.021,
"after": 0.0259,
"delta": 0.0049,
"percent_delta": 0.2333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.32,
"after": 7.1768,
"delta": 2.8568,
"percent_delta": 0.6613,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.233,
"delta": 0.007,
"percent_delta": 0.031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.191,
"after": 0.5119,
"delta": 0.3209,
"percent_delta": 1.6801,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.6999,
"delta": 0.7199,
"percent_delta": 0.7346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.4106,
"delta": 0.2006,
"percent_delta": 0.9552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.3021,
"delta": -0.0009,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.535,
"after": 1.0857,
"delta": 0.5507,
"percent_delta": 1.0293,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.63,
"after": 1.1484,
"delta": 0.5184,
"percent_delta": 0.8229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4679,
"delta": 0.0209,
"percent_delta": 0.0468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.216,
"after": 2.1251,
"delta": 0.9091,
"percent_delta": 0.7476,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.32,
"after": 7.1768,
"delta": 2.8568,
"percent_delta": 0.6613,
"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.4751,
"predicted_3B": 0.0259,
"predicted_AB": 7.1768,
"predicted_AVG": 0.2389,
"predicted_BB": 0.5107,
"predicted_H": 1.7143,
"predicted_HBP": 0.028,
"predicted_HR": 0.4135,
"predicted_OBP": 0.2894,
"predicted_R": 1.0988,
"predicted_RBI": 1.1623,
"predicted_SLG": 0.4851,
"predicted_SO": 2.13
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4751,
"after": 0.4751,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0259,
"after": 0.0259,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1768,
"after": 7.1768,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2389,
"delta": 0.0059,
"percent_delta": 0.0253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5119,
"after": 0.5107,
"delta": -0.0012,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6999,
"after": 1.7143,
"delta": 0.0144,
"percent_delta": 0.0085,
"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.4106,
"after": 0.4135,
"delta": 0.0029,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3021,
"after": 0.2894,
"delta": -0.0127,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0857,
"after": 1.0988,
"delta": 0.0131,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1484,
"after": 1.1623,
"delta": 0.0139,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4679,
"after": 0.4851,
"delta": 0.0172,
"percent_delta": 0.0368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1251,
"after": 2.13,
"delta": 0.0049,
"percent_delta": 0.0023,
"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.4679,
"after": 0.4851,
"delta": 0.0172,
"percent_delta": 0.0368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3021,
"after": 0.2894,
"delta": -0.0127,
"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 7 (raw=7.18), rates preserved: AVG=0.239 HR/AB=0.058",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4751,
"after": 0.0,
"delta": -0.4751,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0259,
"after": 0.0,
"delta": -0.0259,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1768,
"after": 7.0,
"delta": -0.1768,
"percent_delta": -0.0246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5107,
"after": 0.0,
"delta": -0.5107,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7143,
"after": 2.0,
"delta": 0.2857,
"percent_delta": 0.1667,
"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.4135,
"after": 0.0,
"delta": -0.4135,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1623,
"after": 1.0,
"delta": -0.1623,
"percent_delta": -0.1396,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.13,
"after": 2.0,
"delta": -0.13,
"percent_delta": -0.061,
"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": 1.7143,
"after": 2.0,
"delta": 0.2857,
"percent_delta": 0.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.5107,
"after": 0.0,
"delta": -0.5107,
"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": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 1.0988,
"after": 1.0,
"delta": -0.0988,
"percent_delta": -0.0899,
"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": 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_R",
"before": 1.0988,
"after": 1.0,
"delta": -0.0988,
"percent_delta": -0.0899,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2389,
"after": 0.286,
"delta": 0.0471,
"percent_delta": 0.1972,
"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": 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_OBP",
"before": 0.2894,
"after": 0.286,
"delta": -0.0034,
"percent_delta": -0.0117,
"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.4851,
"after": 0.286,
"delta": -0.1991,
"percent_delta": -0.4104,
"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": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2389,
"after": 0.286,
"delta": 0.0471,
"percent_delta": 0.1972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4851,
"after": 0.286,
"delta": -0.1991,
"percent_delta": -0.4104,
"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": 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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 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": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"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_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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2389,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2894,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4851,
"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.286,
"after": 0.2389,
"delta": -0.0471,
"percent_delta": -0.1648,
"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.286,
"after": 0.2894,
"delta": 0.0034,
"percent_delta": 0.012,
"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": 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.286,
"after": 0.4851,
"delta": 0.1991,
"percent_delta": 0.6963,
"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.286,
"after": 0.4851,
"delta": 0.1991,
"percent_delta": 0.6963,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2389,
"delta": -0.0471,
"percent_delta": -0.1648,
"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.324,
"after": 1.0,
"delta": 0.676,
"percent_delta": 2.0864,
"direction": "boost",
"projection_effect": "better",
"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": 4.32,
"after": 4.0,
"delta": -0.32,
"percent_delta": -0.0741,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2389,
"delta": 0.0129,
"percent_delta": 0.0571,
"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": 0.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 1.0,
"delta": 0.79,
"percent_delta": 3.7619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.2894,
"delta": -0.0136,
"percent_delta": -0.0449,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.63,
"after": 2.0,
"delta": 1.37,
"percent_delta": 2.1746,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4851,
"delta": 0.0381,
"percent_delta": 0.0852,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.216,
"after": 0.0,
"delta": -1.216,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 7,
"deboosted_metrics": 4,
"better_metrics": 8,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.63,
"after": 2.0,
"delta": 1.37,
"percent_delta": 2.1746,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.216,
"after": 0.0,
"delta": -1.216,
"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.324 | - |
| predicted_3B | 0.021 | - |
| predicted_AB | 4.320 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.191 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.303 | - |
| predicted_R | 0.535 | - |
| predicted_RBI | 0.630 | - |
| predicted_SLG | 0.447 | - |
| predicted_SO | 1.216 | - |
Final model 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.475 | 0.151 |
| predicted_3B | 0.026 | 0.005 |
| predicted_AB | 7.177 | 2.857 |
| predicted_AVG | 0.233 | 0.007 |
| predicted_BB | 0.512 | 0.321 |
| predicted_H | 1.700 | 0.720 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.411 | 0.201 |
| predicted_OBP | 0.302 | -0.001 |
| predicted_R | 1.086 | 0.551 |
| predicted_RBI | 1.148 | 0.518 |
| predicted_SLG | 0.468 | 0.021 |
| predicted_SO | 2.125 | 0.909 |
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.475 | 0.000 |
| predicted_3B | 0.026 | 0.000 |
| predicted_AB | 7.177 | 0.000 |
| predicted_AVG | 0.239 | 0.006 |
| predicted_BB | 0.511 | -0.001 |
| predicted_H | 1.714 | 0.014 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.413 | 0.003 |
| predicted_OBP | 0.289 | -0.013 |
| predicted_R | 1.099 | 0.013 |
| predicted_RBI | 1.162 | 0.014 |
| predicted_SLG | 0.485 | 0.017 |
| predicted_SO | 2.130 | 0.005 |
AB rounded to 7 (raw=7.18), rates preserved: AVG=0.239 HR/AB=0.058
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 0.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.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 | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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.475 |
| predicted_3B | 0.000 | -0.026 |
| predicted_AB | 7.000 | -0.177 |
| predicted_AVG | 0.286 | 0.047 |
| predicted_BB | 0.000 | -0.511 |
| predicted_H | 2.000 | 0.286 |
| predicted_HR | 0.000 | -0.413 |
| predicted_OBP | 0.286 | -0.003 |
| predicted_R | 1.000 | -0.099 |
| predicted_RBI | 1.000 | -0.162 |
| predicted_SLG | 0.286 | -0.199 |
| predicted_SO | 2.000 | -0.130 |
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 | -3.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 0.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 | 0.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 | 2.000 | 5.000 | 5.000 | 3.000 | 7.000 | 0.2105 | 0.3182 | 0.5789 | 0.2105 | 0.1053 | 0.2632 | 0.1579 | 0.3684 |
| last_10 | 0.20 | 10 | - | 38.000 | 9.000 | 1.000 | 0.000 | 4.000 | 11.000 | 7.000 | 5.000 | 11.000 | 0.2368 | 0.3182 | 0.5789 | 0.2368 | 0.1053 | 0.2895 | 0.1316 | 0.2895 |
| season | 0.60 | 64 | - | 1009.000 | 256.000 | 78.000 | 5.000 | 34.000 | 97.000 | 129.000 | 46.000 | 293.000 | 0.2537 | 0.2887 | 0.4420 | 0.2537 | 0.0337 | 0.0961 | 0.0456 | 0.2904 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6660 |
| predicted_3B | 0.0320 |
| predicted_AB | 10.7840 |
| predicted_AVG | 0.2419 |
| predicted_BB | 0.9170 |
| predicted_H | 2.6090 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.6640 |
| predicted_OBP | 0.3009 |
| predicted_R | 1.7810 |
| predicted_RBI | 1.8030 |
| predicted_SLG | 0.4943 |
| predicted_SO | 3.2730 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3240 | 0.6660 | 0.4751 | model_form_blend |
| predicted_3B | 0.0210 | 0.0320 | 0.0259 | model_form_blend |
| predicted_AB | 4.3200 | 10.7840 | 7.1768 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2419 | 0.2330 | model_form_blend |
| predicted_BB | 0.1910 | 0.9170 | 0.5119 | model_form_blend |
| predicted_H | 0.9800 | 2.6090 | 1.6999 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.2100 | 0.6640 | 0.4106 | model_form_blend |
| predicted_OBP | 0.3030 | 0.3009 | 0.3021 | model_form_blend |
| predicted_R | 0.5350 | 1.7810 | 1.0857 | model_form_blend |
| predicted_RBI | 0.6300 | 1.8030 | 1.1484 | model_form_blend |
| predicted_SLG | 0.4470 | 0.4943 | 0.4679 | model_form_blend |
| predicted_SO | 1.2160 | 3.2730 | 2.1251 | 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 | 241 |
| 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 | 2 |
| BB | 0 |
| 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 | 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 | SS |
| gameID | 20260607_SF@CHC |
| game_type | full |
| mlbID | 642715 |
| playerID | 642715 |
| playerName | Willy Adames |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 27.7 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.32 |
| sl_xwoba | 0.3 |
| sl_xba | 0.228 |
| sl_xslg | 0.411 |
| sl_sweet_spot_percent | 38.0 |
| sl_barrel_batted_rate | 9.2 |
| sl_hard_hit_percent | 42.4 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 22.0 |
| sl_whiff_percent | 27.7 |
| sl_swing_percent | 48.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.191 | 1.000 | 0.000 | Hitting_2B | 0.191 | 0.000 | 0.809 | 1.000 |
| predicted_3B | 0.064 | 0.000 | 0.000 | Hitting_3B | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_AB | 4.400 | 4.000 | 7.000 | Hitting_AB | 4.072 | 4.000 | -0.072 | 0.000 |
| predicted_AVG | 0.260 | 0.250 | 0.286 | Hitting_AVG | 0.336 | 0.250 | -0.086 | 0.000 |
| predicted_BB | 0.268 | 0.000 | 1.000 | Hitting_BB | 0.268 | 0.000 | -0.268 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.140 | 1.000 | 2.000 | Hitting_H | 1.370 | 1.000 | -0.370 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.043 | 0.000 | -0.043 | 0.000 |
| predicted_OBP | 0.333 | 0.250 | 0.375 | Hitting_OBP | 0.378 | 0.250 | -0.128 | 0.000 |
| predicted_R | 0.562 | 1.000 | 1.000 | Hitting_R | 0.562 | 0.000 | 0.438 | 1.000 |
| predicted_RBI | 0.440 | 0.000 | 1.000 | Hitting_RBI | 0.434 | 0.000 | -0.434 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.085 | 0.000 | -0.085 | 0.000 |
| predicted_SLG | 0.406 | 0.500 | 0.286 | Hitting_SLG | 0.446 | 0.250 | 0.054 | 0.250 |
| predicted_SO | 0.187 | 0.000 | 0.000 | Hitting_SO | 0.187 | 0.000 | -0.187 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | deboosted |
| Changed Metrics | 12 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 7 |
| Better Metrics | 6 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_2B: 0.1910 -> 1.0000 (boost 0.8090, better) |
| 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.4000 -> 7.2209 (boost 2.8209, 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_AVG: 0.2889 -> 0.3053 (boost 0.0164, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 1 | 8 | 2 | 7 | predicted_RBI: 0.7628 -> 1.0000 (boost 0.2372, better) | predicted_SO: 0.4128 -> 0.0000 (deboost -0.4128, better) | AB rounded to 7 (raw=7.22), rates preserved: AVG=0.305 HR/AB=0.009 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400) |
| 6 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3406 -> 0.3750 (boost 0.0344, better) | predicted_SLG: 0.4163 -> 0.2860 (deboost -0.1303, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2860 -> 0.4163 (boost 0.1303, better) | predicted_OBP: 0.3750 -> 0.3406 (deboost -0.0344, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "650333",
"player_name": "Luis Arraez",
"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.191,
"predicted_3B": 0.064,
"predicted_AB": 4.4,
"predicted_AVG": 0.26,
"predicted_BB": 0.268,
"predicted_H": 1.14,
"predicted_HR": 0.06,
"predicted_OBP": 0.333,
"predicted_R": 0.562,
"predicted_RBI": 0.44,
"predicted_SLG": 0.406,
"predicted_SO": 0.187
},
"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.3943,
"predicted_3B": 0.102,
"predicted_AB": 7.2209,
"predicted_AVG": 0.2889,
"predicted_BB": 0.3869,
"predicted_H": 2.1863,
"predicted_HBP": 0.125,
"predicted_HR": 0.0671,
"predicted_OBP": 0.3425,
"predicted_R": 0.9946,
"predicted_RBI": 0.7537,
"predicted_SLG": 0.4186,
"predicted_SO": 0.4119
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.191,
"after": 0.3943,
"delta": 0.2033,
"percent_delta": 1.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.064,
"after": 0.102,
"delta": 0.038,
"percent_delta": 0.5937,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4,
"after": 7.2209,
"delta": 2.8209,
"percent_delta": 0.6411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2889,
"delta": 0.0289,
"percent_delta": 0.1112,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.268,
"after": 0.3869,
"delta": 0.1189,
"percent_delta": 0.4437,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.14,
"after": 2.1863,
"delta": 1.0463,
"percent_delta": 0.9178,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0671,
"delta": 0.0071,
"percent_delta": 0.1183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3425,
"delta": 0.0095,
"percent_delta": 0.0285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.562,
"after": 0.9946,
"delta": 0.4326,
"percent_delta": 0.7698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.7537,
"delta": 0.3137,
"percent_delta": 0.713,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.406,
"after": 0.4186,
"delta": 0.0126,
"percent_delta": 0.031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.187,
"after": 0.4119,
"delta": 0.2249,
"percent_delta": 1.2027,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.4,
"after": 7.2209,
"delta": 2.8209,
"percent_delta": 0.6411,
"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.3943,
"predicted_3B": 0.102,
"predicted_AB": 7.2209,
"predicted_AVG": 0.3053,
"predicted_BB": 0.386,
"predicted_H": 2.2049,
"predicted_HBP": 0.125,
"predicted_HR": 0.0676,
"predicted_OBP": 0.3406,
"predicted_R": 1.0066,
"predicted_RBI": 0.7628,
"predicted_SLG": 0.4163,
"predicted_SO": 0.4128
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3943,
"after": 0.3943,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.102,
"after": 0.102,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.2209,
"after": 7.2209,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2889,
"after": 0.3053,
"delta": 0.0164,
"percent_delta": 0.0568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3869,
"after": 0.386,
"delta": -0.0009,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.1863,
"after": 2.2049,
"delta": 0.0186,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.125,
"after": 0.125,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0671,
"after": 0.0676,
"delta": 0.0005,
"percent_delta": 0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3425,
"after": 0.3406,
"delta": -0.0019,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.9946,
"after": 1.0066,
"delta": 0.012,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7537,
"after": 0.7628,
"delta": 0.0091,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4186,
"after": 0.4163,
"delta": -0.0023,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.4119,
"after": 0.4128,
"delta": 0.0009,
"percent_delta": 0.0022,
"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_AVG",
"before": 0.2889,
"after": 0.3053,
"delta": 0.0164,
"percent_delta": 0.0568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.22), rates preserved: AVG=0.305 HR/AB=0.009",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.3943,
"after": 0.0,
"delta": -0.3943,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.102,
"after": 0.0,
"delta": -0.102,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 7.2209,
"after": 7.0,
"delta": -0.2209,
"percent_delta": -0.0306,
"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": 2.2049,
"after": 2.0,
"delta": -0.2049,
"percent_delta": -0.0929,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.125,
"after": 0.0,
"delta": -0.125,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0676,
"after": 0.0,
"delta": -0.0676,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7628,
"after": 1.0,
"delta": 0.2372,
"percent_delta": 0.311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4128,
"after": 0.0,
"delta": -0.4128,
"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_RBI",
"before": 0.7628,
"after": 1.0,
"delta": 0.2372,
"percent_delta": 0.311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4128,
"after": 0.0,
"delta": -0.4128,
"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=5.0, weight=0.057, BvP AVG=0.400)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 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": 7.0,
"after": 7.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_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_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": 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_BB",
"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.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": 7.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": 7.0,
"after": 7.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": 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_R",
"before": 1.0066,
"after": 1.0,
"delta": -0.0066,
"percent_delta": -0.0066,
"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_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": {}
},
{
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3053,
"after": 0.286,
"delta": -0.0193,
"percent_delta": -0.0632,
"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": 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_OBP",
"before": 0.3406,
"after": 0.375,
"delta": 0.0344,
"percent_delta": 0.101,
"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.4163,
"after": 0.286,
"delta": -0.1303,
"percent_delta": -0.313,
"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_OBP",
"before": 0.3406,
"after": 0.375,
"delta": 0.0344,
"percent_delta": 0.101,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4163,
"after": 0.286,
"delta": -0.1303,
"percent_delta": -0.313,
"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": 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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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": 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": 1,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 4,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.3053,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3406,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4163,
"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.286,
"after": 0.3053,
"delta": 0.0193,
"percent_delta": 0.0676,
"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.375,
"after": 0.3406,
"delta": -0.0344,
"percent_delta": -0.0917,
"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.286,
"after": 0.4163,
"delta": 0.1303,
"percent_delta": 0.4555,
"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.286,
"after": 0.4163,
"delta": 0.1303,
"percent_delta": 0.4555,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3406,
"delta": -0.0344,
"percent_delta": -0.0917,
"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.191,
"after": 1.0,
"delta": 0.809,
"percent_delta": 4.2356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.4,
"after": 4.0,
"delta": -0.4,
"percent_delta": -0.0909,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.3053,
"delta": 0.0453,
"percent_delta": 0.1742,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.268,
"after": 0.0,
"delta": -0.268,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.14,
"after": 1.0,
"delta": -0.14,
"percent_delta": -0.1228,
"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.333,
"after": 0.3406,
"delta": 0.0076,
"percent_delta": 0.0228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.562,
"after": 1.0,
"delta": 0.438,
"percent_delta": 0.7794,
"direction": "boost",
"projection_effect": "better",
"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.406,
"after": 0.4163,
"delta": 0.0103,
"percent_delta": 0.0254,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.187,
"after": 0.0,
"delta": -0.187,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 5,
"deboosted_metrics": 7,
"better_metrics": 6,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.191,
"after": 1.0,
"delta": 0.809,
"percent_delta": 4.2356,
"direction": "boost",
"projection_effect": "better",
"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": "deboosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | - |
| predicted_3B | 0.064 | - |
| predicted_AB | 4.400 | - |
| predicted_AVG | 0.260 | - |
| predicted_BB | 0.268 | - |
| predicted_H | 1.140 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.333 | - |
| predicted_R | 0.562 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.406 | - |
| predicted_SO | 0.187 | - |
Final model 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.394 | 0.203 |
| predicted_3B | 0.102 | 0.038 |
| predicted_AB | 7.221 | 2.821 |
| predicted_AVG | 0.289 | 0.029 |
| predicted_BB | 0.387 | 0.119 |
| predicted_H | 2.186 | 1.046 |
| predicted_HBP | 0.125 | - |
| predicted_HR | 0.067 | 0.007 |
| predicted_OBP | 0.343 | 0.010 |
| predicted_R | 0.995 | 0.433 |
| predicted_RBI | 0.754 | 0.314 |
| predicted_SLG | 0.419 | 0.013 |
| predicted_SO | 0.412 | 0.225 |
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.394 | 0.000 |
| predicted_3B | 0.102 | 0.000 |
| predicted_AB | 7.221 | 0.000 |
| predicted_AVG | 0.305 | 0.016 |
| predicted_BB | 0.386 | -0.001 |
| predicted_H | 2.205 | 0.019 |
| predicted_HBP | 0.125 | 0.000 |
| predicted_HR | 0.068 | 0.000 |
| predicted_OBP | 0.341 | -0.002 |
| predicted_R | 1.007 | 0.012 |
| predicted_RBI | 0.763 | 0.009 |
| predicted_SLG | 0.416 | -0.002 |
| predicted_SO | 0.413 | 0.001 |
AB rounded to 7 (raw=7.22), rates preserved: AVG=0.305 HR/AB=0.009
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 0.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 0.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 | 7.000 | 0.000 |
| BB | 1.000 | 1.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 0.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 | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.394 |
| predicted_3B | 0.000 | -0.102 |
| predicted_AB | 7.000 | -0.221 |
| predicted_AVG | 0.286 | -0.019 |
| predicted_BB | 1.000 | 0.614 |
| predicted_H | 2.000 | -0.205 |
| predicted_HR | 0.000 | -0.068 |
| predicted_OBP | 0.375 | 0.034 |
| predicted_R | 1.000 | -0.007 |
| predicted_RBI | 1.000 | 0.237 |
| predicted_SLG | 0.286 | -0.130 |
| predicted_SO | 0.000 | -0.413 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | -1.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 | 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 | 7.000 | 2.000 | 0.000 | 0.000 | 2.000 | 3.000 | 0.000 | 2.000 | 0.3182 | 0.3182 | 0.4091 | 0.3182 | 0.0000 | 0.0909 | 0.0000 | 0.0909 |
| last_10 | 0.20 | 10 | - | 42.000 | 13.000 | 3.000 | 1.000 | 0.000 | 5.000 | 7.000 | 2.000 | 3.000 | 0.3095 | 0.3265 | 0.4286 | 0.3095 | 0.0000 | 0.1191 | 0.0476 | 0.0714 |
| season | 0.60 | 62 | - | 957.000 | 322.000 | 45.000 | 15.000 | 10.000 | 102.000 | 132.000 | 63.000 | 44.000 | 0.3365 | 0.3779 | 0.4462 | 0.3365 | 0.0104 | 0.1066 | 0.0658 | 0.0460 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6510 |
| predicted_3B | 0.1500 |
| predicted_AB | 10.7840 |
| predicted_AVG | 0.3253 |
| predicted_BB | 0.5370 |
| predicted_H | 3.5080 |
| predicted_HBP | 0.1250 |
| predicted_HR | 0.0760 |
| predicted_OBP | 0.3545 |
| predicted_R | 1.5410 |
| predicted_RBI | 1.1500 |
| predicted_SLG | 0.4345 |
| predicted_SO | 0.6960 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1910 | 0.6510 | 0.3943 | model_form_blend |
| predicted_3B | 0.0640 | 0.1500 | 0.1020 | model_form_blend |
| predicted_AB | 4.4000 | 10.7840 | 7.2209 | model_form_blend |
| predicted_AVG | 0.2600 | 0.3253 | 0.2889 | model_form_blend |
| predicted_BB | 0.2680 | 0.5370 | 0.3869 | model_form_blend |
| predicted_H | 1.1400 | 3.5080 | 2.1863 | model_form_blend |
| predicted_HBP | - | 0.1250 | 0.1250 | form_only |
| predicted_HR | 0.0600 | 0.0760 | 0.0671 | model_form_blend |
| predicted_OBP | 0.3330 | 0.3545 | 0.3425 | model_form_blend |
| predicted_R | 0.5620 | 1.5410 | 0.9946 | model_form_blend |
| predicted_RBI | 0.4400 | 1.1500 | 0.7537 | model_form_blend |
| predicted_SLG | 0.4060 | 0.4345 | 0.4186 | model_form_blend |
| predicted_SO | 0.1870 | 0.6960 | 0.4119 | 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 | 235 |
| Season rows before report date | 235 |
| Report year | 2026 |
| Profile rows used | 235 |
| 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.336 |
| 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 | 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 | 20260607_SF@CHC |
| game_type | full |
| mlbID | 650333 |
| playerID | 650333 |
| playerName | Luis Arraez |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 4.3 |
| sl_bb_percent | 5.4 |
| sl_woba | 0.342 |
| sl_xwoba | 0.307 |
| sl_xba | 0.293 |
| sl_xslg | 0.373 |
| sl_sweet_spot_percent | 42.1 |
| sl_barrel_batted_rate | 0.4 |
| sl_hard_hit_percent | 22.3 |
| sl_exit_velocity_avg | 87.4 |
| sl_launch_angle_avg | 15.2 |
| sl_whiff_percent | 9.2 |
| sl_swing_percent | 51.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.235 | 0.000 | 0.000 | Hitting_2B | 0.235 | 0.000 | -0.235 | 0.000 |
| predicted_3B | 0.049 | 0.000 | 0.000 | Hitting_3B | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_AB | 4.590 | 4.000 | 7.000 | Hitting_AB | 3.985 | 5.000 | 0.015 | -1.000 |
| predicted_AVG | 0.240 | 0.000 | 0.286 | Hitting_AVG | 0.304 | 0.000 | -0.304 | 0.000 |
| predicted_BB | 0.147 | 0.000 | 0.000 | Hitting_BB | 0.147 | 0.000 | -0.147 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_H | 1.100 | 0.000 | 2.000 | Hitting_H | 1.211 | 0.000 | -1.211 | 0.000 |
| predicted_HR | 0.250 | 0.000 | 0.000 | Hitting_HR | 0.265 | 0.000 | -0.265 | 0.000 |
| predicted_OBP | 0.297 | 0.000 | 0.286 | Hitting_OBP | 0.345 | 0.000 | -0.345 | 0.000 |
| predicted_R | 0.652 | 0.000 | 1.000 | Hitting_R | 0.652 | 0.000 | -0.652 | 0.000 |
| predicted_RBI | 0.640 | 0.000 | 1.000 | Hitting_RBI | 0.681 | 0.000 | -0.681 | 0.000 |
| predicted_SLG | 0.483 | 0.000 | 0.286 | Hitting_SLG | 0.587 | 0.000 | -0.587 | 0.000 |
| predicted_SO | 0.828 | 1.000 | 1.000 | Hitting_SO | 0.828 | 2.000 | 0.172 | -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.8280 -> 1.0000 (boost 0.1720, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.5900 -> 7.1123 (boost 2.5223, 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.5206 -> 0.5387 (boost 0.0181, better) | predicted_OBP: 0.3037 -> 0.2906 (deboost -0.0131, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 1 | 8 | 2 | 7 | predicted_H: 1.9314 -> 2.0000 (boost 0.0686, better) | predicted_HR: 0.4828 -> 0.0000 (deboost -0.4828, worse) | AB rounded to 7 (raw=7.11), rates preserved: AVG=0.272 HR/AB=0.068 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0584 -> 1.0000 (deboost -0.0584, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2716 -> 0.2860 (boost 0.0144, better) | predicted_SLG: 0.5387 -> 0.2860 (deboost -0.2527, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 0 | 4 | 0 | 4 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2860 -> 0.5387 (boost 0.2527, better) | predicted_AVG: 0.2860 -> 0.2716 (deboost -0.0144, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669477",
"player_name": "Casey Schmitt",
"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.235,
"predicted_3B": 0.049,
"predicted_AB": 4.59,
"predicted_AVG": 0.24,
"predicted_BB": 0.147,
"predicted_H": 1.1,
"predicted_HR": 0.25,
"predicted_OBP": 0.297,
"predicted_R": 0.652,
"predicted_RBI": 0.64,
"predicted_SLG": 0.483,
"predicted_SO": 0.828
},
"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.3306,
"predicted_3B": 0.0604,
"predicted_AB": 7.1123,
"predicted_AVG": 0.2603,
"predicted_BB": 0.191,
"predicted_H": 1.9151,
"predicted_HBP": 0.202,
"predicted_HR": 0.4794,
"predicted_OBP": 0.3037,
"predicted_R": 1.0457,
"predicted_RBI": 1.1297,
"predicted_SLG": 0.5206,
"predicted_SO": 1.3824
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.235,
"after": 0.3306,
"delta": 0.0956,
"percent_delta": 0.4068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.049,
"after": 0.0604,
"delta": 0.0114,
"percent_delta": 0.2327,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.59,
"after": 7.1123,
"delta": 2.5223,
"percent_delta": 0.5495,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2603,
"delta": 0.0203,
"percent_delta": 0.0846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.147,
"after": 0.191,
"delta": 0.044,
"percent_delta": 0.2993,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1,
"after": 1.9151,
"delta": 0.8151,
"percent_delta": 0.741,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.25,
"after": 0.4794,
"delta": 0.2294,
"percent_delta": 0.9176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.3037,
"delta": 0.0067,
"percent_delta": 0.0226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.652,
"after": 1.0457,
"delta": 0.3937,
"percent_delta": 0.6038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.64,
"after": 1.1297,
"delta": 0.4897,
"percent_delta": 0.7652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.483,
"after": 0.5206,
"delta": 0.0376,
"percent_delta": 0.0778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.828,
"after": 1.3824,
"delta": 0.5544,
"percent_delta": 0.6696,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.59,
"after": 7.1123,
"delta": 2.5223,
"percent_delta": 0.5495,
"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.3306,
"predicted_3B": 0.0604,
"predicted_AB": 7.1123,
"predicted_AVG": 0.2716,
"predicted_BB": 0.1906,
"predicted_H": 1.9314,
"predicted_HBP": 0.202,
"predicted_HR": 0.4828,
"predicted_OBP": 0.2906,
"predicted_R": 1.0584,
"predicted_RBI": 1.1434,
"predicted_SLG": 0.5387,
"predicted_SO": 1.3856
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3306,
"after": 0.3306,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0604,
"after": 0.0604,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1123,
"after": 7.1123,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2603,
"after": 0.2716,
"delta": 0.0113,
"percent_delta": 0.0434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.191,
"after": 0.1906,
"delta": -0.0004,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9151,
"after": 1.9314,
"delta": 0.0163,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.202,
"after": 0.202,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4794,
"after": 0.4828,
"delta": 0.0034,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3037,
"after": 0.2906,
"delta": -0.0131,
"percent_delta": -0.0431,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0457,
"after": 1.0584,
"delta": 0.0127,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1297,
"after": 1.1434,
"delta": 0.0137,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5206,
"after": 0.5387,
"delta": 0.0181,
"percent_delta": 0.0348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3824,
"after": 1.3856,
"delta": 0.0032,
"percent_delta": 0.0023,
"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.5206,
"after": 0.5387,
"delta": 0.0181,
"percent_delta": 0.0348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3037,
"after": 0.2906,
"delta": -0.0131,
"percent_delta": -0.0431,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.11), rates preserved: AVG=0.272 HR/AB=0.068",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.3306,
"after": 0.0,
"delta": -0.3306,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0604,
"after": 0.0,
"delta": -0.0604,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 7.1123,
"after": 7.0,
"delta": -0.1123,
"percent_delta": -0.0158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1906,
"after": 0.0,
"delta": -0.1906,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9314,
"after": 2.0,
"delta": 0.0686,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.202,
"after": 0.0,
"delta": -0.202,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4828,
"after": 0.0,
"delta": -0.4828,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1434,
"after": 1.0,
"delta": -0.1434,
"percent_delta": -0.1254,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3856,
"after": 1.0,
"delta": -0.3856,
"percent_delta": -0.2783,
"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_H",
"before": 1.9314,
"after": 2.0,
"delta": 0.0686,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4828,
"after": 0.0,
"delta": -0.4828,
"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": 7.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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 1.0584,
"after": 1.0,
"delta": -0.0584,
"percent_delta": -0.0552,
"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": 1.0584,
"after": 1.0,
"delta": -0.0584,
"percent_delta": -0.0552,
"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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2716,
"after": 0.286,
"delta": 0.0144,
"percent_delta": 0.053,
"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": 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_OBP",
"before": 0.2906,
"after": 0.286,
"delta": -0.0046,
"percent_delta": -0.0158,
"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.5387,
"after": 0.286,
"delta": -0.2527,
"percent_delta": -0.4691,
"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.2716,
"after": 0.286,
"delta": 0.0144,
"percent_delta": 0.053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5387,
"after": 0.286,
"delta": -0.2527,
"percent_delta": -0.4691,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 0.0,
"delta": -2.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_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2716,
"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.2906,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5387,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.286,
"after": 0.2716,
"delta": -0.0144,
"percent_delta": -0.0505,
"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.286,
"after": 0.2906,
"delta": 0.0046,
"percent_delta": 0.016,
"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.286,
"after": 0.5387,
"delta": 0.2527,
"percent_delta": 0.8834,
"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.286,
"after": 0.5387,
"delta": 0.2527,
"percent_delta": 0.8834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2716,
"delta": -0.0144,
"percent_delta": -0.0505,
"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.235,
"after": 0.0,
"delta": -0.235,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.049,
"after": 0.0,
"delta": -0.049,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.59,
"after": 4.0,
"delta": -0.59,
"percent_delta": -0.1285,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2716,
"delta": 0.0316,
"percent_delta": 0.1317,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.147,
"after": 0.0,
"delta": -0.147,
"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.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.2906,
"delta": -0.0064,
"percent_delta": -0.0215,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.652,
"after": 0.0,
"delta": -0.652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.483,
"after": 0.5387,
"delta": 0.0557,
"percent_delta": 0.1153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.828,
"after": 1.0,
"delta": 0.172,
"percent_delta": 0.2077,
"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.828,
"after": 1.0,
"delta": 0.172,
"percent_delta": 0.2077,
"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.235 | - |
| predicted_3B | 0.049 | - |
| predicted_AB | 4.590 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.147 | - |
| predicted_H | 1.100 | - |
| predicted_HR | 0.250 | - |
| predicted_OBP | 0.297 | - |
| predicted_R | 0.652 | - |
| predicted_RBI | 0.640 | - |
| predicted_SLG | 0.483 | - |
| predicted_SO | 0.828 | - |
Final model 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.331 | 0.096 |
| predicted_3B | 0.060 | 0.011 |
| predicted_AB | 7.112 | 2.522 |
| predicted_AVG | 0.260 | 0.020 |
| predicted_BB | 0.191 | 0.044 |
| predicted_H | 1.915 | 0.815 |
| predicted_HBP | 0.202 | - |
| predicted_HR | 0.479 | 0.229 |
| predicted_OBP | 0.304 | 0.007 |
| predicted_R | 1.046 | 0.394 |
| predicted_RBI | 1.130 | 0.490 |
| predicted_SLG | 0.521 | 0.038 |
| predicted_SO | 1.382 | 0.554 |
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.331 | 0.000 |
| predicted_3B | 0.060 | 0.000 |
| predicted_AB | 7.112 | 0.000 |
| predicted_AVG | 0.272 | 0.011 |
| predicted_BB | 0.191 | -0.000 |
| predicted_H | 1.931 | 0.016 |
| predicted_HBP | 0.202 | 0.000 |
| predicted_HR | 0.483 | 0.003 |
| predicted_OBP | 0.291 | -0.013 |
| predicted_R | 1.058 | 0.013 |
| predicted_RBI | 1.143 | 0.014 |
| predicted_SLG | 0.539 | 0.018 |
| predicted_SO | 1.386 | 0.003 |
AB rounded to 7 (raw=7.11), rates preserved: AVG=0.272 HR/AB=0.068
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 0.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.331 |
| predicted_3B | 0.000 | -0.060 |
| predicted_AB | 7.000 | -0.112 |
| predicted_AVG | 0.286 | 0.014 |
| predicted_BB | 0.000 | -0.191 |
| predicted_H | 2.000 | 0.069 |
| predicted_HR | 0.000 | -0.483 |
| predicted_OBP | 0.286 | -0.005 |
| predicted_R | 1.000 | -0.058 |
| predicted_RBI | 1.000 | -0.143 |
| predicted_SLG | 0.286 | -0.253 |
| 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 | -3.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | - | 25.000 | 7.000 | 0.000 | 0.000 | 3.000 | 5.000 | 4.000 | 0.000 | 4.000 | 0.2800 | 0.2800 | 0.6400 | 0.2800 | 0.1200 | 0.2000 | 0.0000 | 0.1600 |
| last_10 | 0.20 | 10 | - | 49.000 | 12.000 | 2.000 | 0.000 | 3.000 | 7.000 | 5.000 | 0.000 | 11.000 | 0.2449 | 0.2449 | 0.4694 | 0.2449 | 0.0612 | 0.1429 | 0.0000 | 0.2245 |
| season | 0.60 | 57 | - | 813.000 | 247.000 | 48.000 | 10.000 | 54.000 | 139.000 | 133.000 | 30.000 | 169.000 | 0.3038 | 0.3455 | 0.5867 | 0.3038 | 0.0664 | 0.1710 | 0.0369 | 0.2079 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4520 |
| predicted_3B | 0.0750 |
| predicted_AB | 10.3180 |
| predicted_AVG | 0.2860 |
| predicted_BB | 0.2470 |
| predicted_H | 2.9510 |
| predicted_HBP | 0.2020 |
| predicted_HR | 0.7710 |
| predicted_OBP | 0.3123 |
| predicted_R | 1.5460 |
| predicted_RBI | 1.7520 |
| predicted_SLG | 0.5684 |
| predicted_SO | 2.0870 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2350 | 0.4520 | 0.3306 | model_form_blend |
| predicted_3B | 0.0490 | 0.0750 | 0.0604 | model_form_blend |
| predicted_AB | 4.5900 | 10.3180 | 7.1123 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2860 | 0.2603 | model_form_blend |
| predicted_BB | 0.1470 | 0.2470 | 0.1910 | model_form_blend |
| predicted_H | 1.1000 | 2.9510 | 1.9151 | model_form_blend |
| predicted_HBP | - | 0.2020 | 0.2020 | form_only |
| predicted_HR | 0.2500 | 0.7710 | 0.4794 | model_form_blend |
| predicted_OBP | 0.2970 | 0.3123 | 0.3037 | model_form_blend |
| predicted_R | 0.6520 | 1.5460 | 1.0457 | model_form_blend |
| predicted_RBI | 0.6400 | 1.7520 | 1.1297 | model_form_blend |
| predicted_SLG | 0.4830 | 0.5684 | 0.5206 | model_form_blend |
| predicted_SO | 0.8280 | 2.0870 | 1.3824 | 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 | 204 |
| Season rows before report date | 204 |
| Report year | 2026 |
| Profile rows used | 204 |
| 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.304 |
| 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 | 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 | 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 | 20260607_SF@CHC |
| game_type | full |
| mlbID | 669477 |
| playerID | 669477 |
| playerName | Casey Schmitt |
| pos | DH |
| started | True |
| startingPosition | LF |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 19.9 |
| sl_bb_percent | 2.8 |
| sl_woba | 0.365 |
| sl_xwoba | 0.348 |
| sl_xba | 0.277 |
| sl_xslg | 0.508 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 13.6 |
| sl_hard_hit_percent | 44.3 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 21.2 |
| sl_whiff_percent | 22.9 |
| sl_swing_percent | 52.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.277 | 0.000 | 1.000 | Hitting_2B | 0.277 | 0.000 | -0.277 | 0.000 |
| predicted_3B | 0.004 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.390 | 4.000 | 7.000 | Hitting_AB | 3.903 | 3.000 | 0.097 | 1.000 |
| predicted_AVG | 0.223 | 0.000 | 0.286 | Hitting_AVG | 0.252 | 0.000 | -0.252 | 0.000 |
| predicted_BB | 0.277 | 0.000 | 1.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 | 0.980 | 0.000 | 2.000 | Hitting_H | 0.983 | 0.000 | -0.983 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.126 | 0.000 | -0.126 | 0.000 |
| predicted_OBP | 0.299 | 0.000 | 0.375 | Hitting_OBP | 0.300 | 0.250 | -0.300 | -0.250 |
| predicted_R | 0.424 | 0.000 | 1.000 | Hitting_R | 0.424 | 1.000 | -0.424 | -1.000 |
| predicted_RBI | 0.470 | 0.000 | 1.000 | Hitting_RBI | 0.534 | 0.000 | -0.534 | 0.000 |
| predicted_SLG | 0.410 | 0.000 | 0.429 | Hitting_SLG | 0.422 | 0.000 | -0.422 | 0.000 |
| predicted_SO | 1.269 | 2.000 | 2.000 | Hitting_SO | 1.269 | 3.000 | 0.731 | -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.2690 -> 2.0000 (boost 0.7310, worse) |
| 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.3900 -> 6.9246 (boost 2.5346, 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.2977 -> 0.2888 (deboost -0.0089, 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 | 6 | 1 | predicted_2B: 0.5260 -> 1.0000 (boost 0.4740, better) | predicted_SO: 2.2691 -> 2.0000 (deboost -0.2691, better) | AB rounded to 7 (raw=6.92), rates preserved: AVG=0.232 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.200) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8872 -> 1.0000 (boost 0.1128, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_OBP: 0.2888 -> 0.3750 (boost 0.0862, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 0 | 6 | 0 | 6 | - | predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3750 -> 0.2888 (deboost -0.0862, 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.277,
"predicted_3B": 0.004,
"predicted_AB": 4.39,
"predicted_AVG": 0.223,
"predicted_BB": 0.277,
"predicted_H": 0.98,
"predicted_HR": 0.14,
"predicted_OBP": 0.299,
"predicted_R": 0.424,
"predicted_RBI": 0.47,
"predicted_SLG": 0.41,
"predicted_SO": 1.269
},
"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.526,
"predicted_3B": 0.0256,
"predicted_AB": 6.9246,
"predicted_AVG": 0.2281,
"predicted_BB": 0.5499,
"predicted_H": 1.596,
"predicted_HBP": 0.028,
"predicted_HR": 0.2265,
"predicted_OBP": 0.2977,
"predicted_R": 0.8766,
"predicted_RBI": 0.7954,
"predicted_SLG": 0.4177,
"predicted_SO": 2.2639
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.277,
"after": 0.526,
"delta": 0.249,
"percent_delta": 0.8989,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0256,
"delta": 0.0216,
"percent_delta": 5.4,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.39,
"after": 6.9246,
"delta": 2.5346,
"percent_delta": 0.5774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2281,
"delta": 0.0051,
"percent_delta": 0.0229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.277,
"after": 0.5499,
"delta": 0.2729,
"percent_delta": 0.9852,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.596,
"delta": 0.616,
"percent_delta": 0.6286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2265,
"delta": 0.0865,
"percent_delta": 0.6179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2977,
"delta": -0.0013,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.424,
"after": 0.8766,
"delta": 0.4526,
"percent_delta": 1.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.7954,
"delta": 0.3254,
"percent_delta": 0.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.41,
"after": 0.4177,
"delta": 0.0077,
"percent_delta": 0.0188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.269,
"after": 2.2639,
"delta": 0.9949,
"percent_delta": 0.784,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.39,
"after": 6.9246,
"delta": 2.5346,
"percent_delta": 0.5774,
"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.526,
"predicted_3B": 0.0256,
"predicted_AB": 6.9246,
"predicted_AVG": 0.2324,
"predicted_BB": 0.5486,
"predicted_H": 1.6096,
"predicted_HBP": 0.028,
"predicted_HR": 0.2281,
"predicted_OBP": 0.2888,
"predicted_R": 0.8872,
"predicted_RBI": 0.805,
"predicted_SLG": 0.4146,
"predicted_SO": 2.2691
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.526,
"after": 0.526,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0256,
"after": 0.0256,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.9246,
"after": 6.9246,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2281,
"after": 0.2324,
"delta": 0.0043,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5499,
"after": 0.5486,
"delta": -0.0013,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.596,
"after": 1.6096,
"delta": 0.0136,
"percent_delta": 0.0085,
"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.2265,
"after": 0.2281,
"delta": 0.0016,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2977,
"after": 0.2888,
"delta": -0.0089,
"percent_delta": -0.0299,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8766,
"after": 0.8872,
"delta": 0.0106,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7954,
"after": 0.805,
"delta": 0.0096,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4177,
"after": 0.4146,
"delta": -0.0031,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.2639,
"after": 2.2691,
"delta": 0.0052,
"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_OBP",
"before": 0.2977,
"after": 0.2888,
"delta": -0.0089,
"percent_delta": -0.0299,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.92), rates preserved: AVG=0.232 HR/AB=0.033",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.526,
"after": 1.0,
"delta": 0.474,
"percent_delta": 0.9011,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0256,
"after": 0.0,
"delta": -0.0256,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.9246,
"after": 7.0,
"delta": 0.0754,
"percent_delta": 0.0109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5486,
"after": 1.0,
"delta": 0.4514,
"percent_delta": 0.8228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6096,
"after": 2.0,
"delta": 0.3904,
"percent_delta": 0.2425,
"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.2281,
"after": 0.0,
"delta": -0.2281,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.805,
"after": 1.0,
"delta": 0.195,
"percent_delta": 0.2422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.2691,
"after": 2.0,
"delta": -0.2691,
"percent_delta": -0.1186,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 5,
"deboosted_metrics": 2,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.526,
"after": 1.0,
"delta": 0.474,
"percent_delta": 0.9011,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.2691,
"after": 2.0,
"delta": -0.2691,
"percent_delta": -0.1186,
"direction": "deboost",
"projection_effect": "better",
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"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": 7.0,
"after": 7.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": 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_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": 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": {
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 7.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": 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": 7.0,
"after": 7.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": 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_R",
"before": 0.8872,
"after": 1.0,
"delta": 0.1128,
"percent_delta": 0.1271,
"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": 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_R",
"before": 0.8872,
"after": 1.0,
"delta": 0.1128,
"percent_delta": 0.1271,
"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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.429,
"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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2324,
"after": 0.286,
"delta": 0.0536,
"percent_delta": 0.2306,
"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": 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_OBP",
"before": 0.2888,
"after": 0.375,
"delta": 0.0862,
"percent_delta": 0.2985,
"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.4146,
"after": 0.429,
"delta": 0.0144,
"percent_delta": 0.0347,
"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_OBP",
"before": 0.2888,
"after": 0.375,
"delta": 0.0862,
"percent_delta": 0.2985,
"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": 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": 1.0,
"after": 0.0,
"delta": -1.0,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.2324,
"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.2888,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4146,
"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.286,
"after": 0.2324,
"delta": -0.0536,
"percent_delta": -0.1873,
"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.375,
"after": 0.2888,
"delta": -0.0862,
"percent_delta": -0.2299,
"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.429,
"after": 0.4146,
"delta": -0.0144,
"percent_delta": -0.0335,
"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_OBP",
"before": 0.375,
"after": 0.2888,
"delta": -0.0862,
"percent_delta": -0.2299,
"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.277,
"after": 0.0,
"delta": -0.277,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.39,
"after": 4.0,
"delta": -0.39,
"percent_delta": -0.0888,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2324,
"delta": 0.0094,
"percent_delta": 0.0422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.98,
"after": 0.0,
"delta": -0.98,
"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.299,
"after": 0.2888,
"delta": -0.0102,
"percent_delta": -0.0341,
"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.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.41,
"after": 0.4146,
"delta": 0.0046,
"percent_delta": 0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.269,
"after": 2.0,
"delta": 0.731,
"percent_delta": 0.576,
"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.269,
"after": 2.0,
"delta": 0.731,
"percent_delta": 0.576,
"direction": "boost",
"projection_effect": "worse",
"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.277 | - |
| predicted_3B | 0.004 | - |
| predicted_AB | 4.390 | - |
| predicted_AVG | 0.223 | - |
| predicted_BB | 0.277 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.424 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.410 | - |
| predicted_SO | 1.269 | - |
Final model 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.526 | 0.249 |
| predicted_3B | 0.026 | 0.022 |
| predicted_AB | 6.925 | 2.535 |
| predicted_AVG | 0.228 | 0.005 |
| predicted_BB | 0.550 | 0.273 |
| predicted_H | 1.596 | 0.616 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.227 | 0.086 |
| predicted_OBP | 0.298 | -0.001 |
| predicted_R | 0.877 | 0.453 |
| predicted_RBI | 0.795 | 0.325 |
| predicted_SLG | 0.418 | 0.008 |
| predicted_SO | 2.264 | 0.995 |
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.526 | 0.000 |
| predicted_3B | 0.026 | 0.000 |
| predicted_AB | 6.925 | 0.000 |
| predicted_AVG | 0.232 | 0.004 |
| predicted_BB | 0.549 | -0.001 |
| predicted_H | 1.610 | 0.014 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.228 | 0.002 |
| predicted_OBP | 0.289 | -0.009 |
| predicted_R | 0.887 | 0.011 |
| predicted_RBI | 0.805 | 0.010 |
| predicted_SLG | 0.415 | -0.003 |
| predicted_SO | 2.269 | 0.005 |
AB rounded to 7 (raw=6.92), rates preserved: AVG=0.232 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 2.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 7.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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 | 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 | 1.000 | 0.474 |
| predicted_3B | 0.000 | -0.026 |
| predicted_AB | 7.000 | 0.075 |
| predicted_AVG | 0.286 | 0.054 |
| predicted_BB | 1.000 | 0.451 |
| predicted_H | 2.000 | 0.390 |
| predicted_HR | 0.000 | -0.228 |
| predicted_OBP | 0.375 | 0.086 |
| predicted_R | 1.000 | 0.113 |
| predicted_RBI | 1.000 | 0.195 |
| predicted_SLG | 0.429 | 0.014 |
| predicted_SO | 2.000 | -0.269 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | -1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 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 | 2.000 | 0.000 | 1.000 | 2.000 | 4.000 | 2.000 | 8.000 | 0.1818 | 0.2500 | 0.4091 | 0.1818 | 0.0454 | 0.0909 | 0.0909 | 0.3636 |
| last_10 | 0.20 | 10 | - | 43.000 | 10.000 | 5.000 | 1.000 | 1.000 | 4.000 | 9.000 | 6.000 | 18.000 | 0.2326 | 0.3265 | 0.4651 | 0.2326 | 0.0233 | 0.0930 | 0.1395 | 0.4186 |
| season | 0.60 | 65 | - | 929.000 | 234.000 | 66.000 | 1.000 | 30.000 | 127.000 | 101.000 | 66.000 | 302.000 | 0.2519 | 0.3004 | 0.4220 | 0.2519 | 0.0323 | 0.1367 | 0.0710 | 0.3251 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8410 |
| predicted_3B | 0.0530 |
| predicted_AB | 10.1300 |
| predicted_AVG | 0.2345 |
| predicted_BB | 0.8950 |
| predicted_H | 2.3750 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.3360 |
| predicted_OBP | 0.2961 |
| predicted_R | 1.4490 |
| predicted_RBI | 1.2070 |
| predicted_SLG | 0.4275 |
| predicted_SO | 3.5220 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2770 | 0.8410 | 0.5260 | model_form_blend |
| predicted_3B | 0.0040 | 0.0530 | 0.0256 | model_form_blend |
| predicted_AB | 4.3900 | 10.1300 | 6.9246 | model_form_blend |
| predicted_AVG | 0.2230 | 0.2345 | 0.2281 | model_form_blend |
| predicted_BB | 0.2770 | 0.8950 | 0.5499 | model_form_blend |
| predicted_H | 0.9800 | 2.3750 | 1.5960 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1400 | 0.3360 | 0.2265 | model_form_blend |
| predicted_OBP | 0.2990 | 0.2961 | 0.2977 | model_form_blend |
| predicted_R | 0.4240 | 1.4490 | 0.8766 | model_form_blend |
| predicted_RBI | 0.4700 | 1.2070 | 0.7954 | model_form_blend |
| predicted_SLG | 0.4100 | 0.4275 | 0.4177 | model_form_blend |
| predicted_SO | 1.2690 | 3.5220 | 2.2639 | 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 | 238 |
| 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.252 |
| 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 | 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 | 1B |
| gameID | 20260607_SF@CHC |
| game_type | full |
| mlbID | 646240 |
| playerID | 646240 |
| playerName | Rafael Devers |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 31.1 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.309 |
| sl_xwoba | 0.29 |
| sl_xba | 0.218 |
| sl_xslg | 0.4 |
| sl_sweet_spot_percent | 31.8 |
| sl_barrel_batted_rate | 9.9 |
| sl_hard_hit_percent | 49.7 |
| sl_exit_velocity_avg | 91.9 |
| sl_launch_angle_avg | 12.4 |
| sl_whiff_percent | 31.3 |
| sl_swing_percent | 50.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.167 | 0.000 | 0.000 | Hitting_2B | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.310 | 3.000 | 4.000 | Hitting_AB | 3.283 | 3.000 | -0.283 | 0.000 |
| predicted_AVG | 0.273 | 0.000 | 0.250 | Hitting_AVG | 0.223 | 0.000 | -0.223 | 0.000 |
| predicted_BB | 0.400 | 0.000 | 0.000 | Hitting_BB | 0.400 | 1.000 | -0.400 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.910 | 0.000 | 1.000 | Hitting_H | 0.733 | 0.000 | -0.733 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.083 | 0.000 | -0.083 | 0.000 |
| predicted_OBP | 0.360 | 0.000 | 0.250 | Hitting_OBP | 0.306 | 0.250 | -0.306 | -0.250 |
| predicted_R | 0.317 | 0.000 | 1.000 | Hitting_R | 0.317 | 0.000 | -0.317 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 0.000 | Hitting_RBI | 0.150 | 0.000 | -0.150 | 0.000 |
| predicted_SLG | 0.434 | 0.000 | 0.250 | Hitting_SLG | 0.350 | 0.000 | -0.350 | 0.000 |
| predicted_SO | 0.933 | 1.000 | 1.000 | Hitting_SO | 0.933 | 0.000 | 0.067 | 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.9330 -> 1.0000 (boost 0.0670, worse) |
| Biggest Deboost | predicted_H: 0.9100 -> 0.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 | 8 | 7 | 1 | 6 | 2 | predicted_AB: 3.3100 -> 4.3903 (boost 1.0803, better) | predicted_SLG: 0.4340 -> 0.4259 (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 | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2794 -> 0.2848 (boost 0.0054, better) | predicted_SLG: 0.4259 -> 0.4142 (deboost -0.0117, 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_BB: 0.5432 -> 0.0000 (deboost -0.5432, worse) | AB rounded to 4 (raw=4.39), rates preserved: AVG=0.285 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5818 -> 1.0000 (boost 0.4182, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4142 -> 0.2500 (deboost -0.1642, 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_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.4142 (boost 0.1642, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805811",
"player_name": "Bryce Eldridge",
"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.167,
"predicted_3B": 0.0,
"predicted_AB": 3.31,
"predicted_AVG": 0.273,
"predicted_BB": 0.4,
"predicted_H": 0.91,
"predicted_HR": 0.09,
"predicted_OBP": 0.36,
"predicted_R": 0.317,
"predicted_RBI": 0.35,
"predicted_SLG": 0.434,
"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.2397,
"predicted_3B": 0.0012,
"predicted_AB": 4.3903,
"predicted_AVG": 0.2794,
"predicted_BB": 0.5445,
"predicted_H": 1.2397,
"predicted_HBP": 0.006,
"predicted_HR": 0.1079,
"predicted_OBP": 0.3622,
"predicted_R": 0.5748,
"predicted_RBI": 0.3745,
"predicted_SLG": 0.4259,
"predicted_SO": 1.1688
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.2397,
"delta": 0.0727,
"percent_delta": 0.4353,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.31,
"after": 4.3903,
"delta": 1.0803,
"percent_delta": 0.3264,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2794,
"delta": 0.0064,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4,
"after": 0.5445,
"delta": 0.1445,
"percent_delta": 0.3612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 1.2397,
"delta": 0.3297,
"percent_delta": 0.3623,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1079,
"delta": 0.0179,
"percent_delta": 0.1989,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.36,
"after": 0.3622,
"delta": 0.0022,
"percent_delta": 0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.317,
"after": 0.5748,
"delta": 0.2578,
"percent_delta": 0.8132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.3745,
"delta": 0.0245,
"percent_delta": 0.07,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.434,
"after": 0.4259,
"delta": -0.0081,
"percent_delta": -0.0187,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.933,
"after": 1.1688,
"delta": 0.2358,
"percent_delta": 0.2527,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 7,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.31,
"after": 4.3903,
"delta": 1.0803,
"percent_delta": 0.3264,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.434,
"after": 0.4259,
"delta": -0.0081,
"percent_delta": -0.0187,
"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.2397,
"predicted_3B": 0.0012,
"predicted_AB": 4.3903,
"predicted_AVG": 0.2848,
"predicted_BB": 0.5432,
"predicted_H": 1.2502,
"predicted_HBP": 0.006,
"predicted_HR": 0.1087,
"predicted_OBP": 0.3635,
"predicted_R": 0.5818,
"predicted_RBI": 0.379,
"predicted_SLG": 0.4142,
"predicted_SO": 1.1715
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2397,
"after": 0.2397,
"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": 4.3903,
"after": 4.3903,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2794,
"after": 0.2848,
"delta": 0.0054,
"percent_delta": 0.0193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5445,
"after": 0.5432,
"delta": -0.0013,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2397,
"after": 1.2502,
"delta": 0.0105,
"percent_delta": 0.0085,
"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.1079,
"after": 0.1087,
"delta": 0.0008,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3622,
"after": 0.3635,
"delta": 0.0013,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5748,
"after": 0.5818,
"delta": 0.007,
"percent_delta": 0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3745,
"after": 0.379,
"delta": 0.0045,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4259,
"after": 0.4142,
"delta": -0.0117,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1688,
"after": 1.1715,
"delta": 0.0027,
"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_AVG",
"before": 0.2794,
"after": 0.2848,
"delta": 0.0054,
"percent_delta": 0.0193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4259,
"after": 0.4142,
"delta": -0.0117,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.39), rates preserved: AVG=0.285 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.2397,
"after": 0.0,
"delta": -0.2397,
"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": 4.3903,
"after": 4.0,
"delta": -0.3903,
"percent_delta": -0.0889,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5432,
"after": 0.0,
"delta": -0.5432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2502,
"after": 1.0,
"delta": -0.2502,
"percent_delta": -0.2001,
"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.1087,
"after": 0.0,
"delta": -0.1087,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.379,
"after": 0.0,
"delta": -0.379,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1715,
"after": 1.0,
"delta": -0.1715,
"percent_delta": -0.1464,
"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_BB",
"before": 0.5432,
"after": 0.0,
"delta": -0.5432,
"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.5818,
"after": 1.0,
"delta": 0.4182,
"percent_delta": 0.7188,
"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.5818,
"after": 1.0,
"delta": 0.4182,
"percent_delta": 0.7188,
"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.2848,
"after": 0.25,
"delta": -0.0348,
"percent_delta": -0.1222,
"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.3635,
"after": 0.25,
"delta": -0.1135,
"percent_delta": -0.3122,
"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.4142,
"after": 0.25,
"delta": -0.1642,
"percent_delta": -0.3964,
"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.4142,
"after": 0.25,
"delta": -0.1642,
"percent_delta": -0.3964,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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_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.2848,
"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.3635,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4142,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2848,
"delta": 0.0348,
"percent_delta": 0.1391,
"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.3635,
"delta": 0.1135,
"percent_delta": 0.4541,
"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.4142,
"delta": 0.1642,
"percent_delta": 0.6567,
"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.4142,
"delta": 0.1642,
"percent_delta": 0.6567,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.31,
"after": 3.0,
"delta": -0.31,
"percent_delta": -0.0937,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2848,
"delta": 0.0118,
"percent_delta": 0.0432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 0.0,
"delta": -0.91,
"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.36,
"after": 0.3635,
"delta": 0.0035,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.317,
"after": 0.0,
"delta": -0.317,
"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.434,
"after": 0.4142,
"delta": -0.0198,
"percent_delta": -0.0456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.933,
"after": 1.0,
"delta": 0.067,
"percent_delta": 0.0718,
"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.933,
"after": 1.0,
"delta": 0.067,
"percent_delta": 0.0718,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.91,
"after": 0.0,
"delta": -0.91,
"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.000 | - |
| predicted_AB | 3.310 | - |
| predicted_AVG | 0.273 | - |
| predicted_BB | 0.400 | - |
| predicted_H | 0.910 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.360 | - |
| predicted_R | 0.317 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.434 | - |
| 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.240 | 0.073 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.390 | 1.080 |
| predicted_AVG | 0.279 | 0.006 |
| predicted_BB | 0.544 | 0.144 |
| predicted_H | 1.240 | 0.330 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.108 | 0.018 |
| predicted_OBP | 0.362 | 0.002 |
| predicted_R | 0.575 | 0.258 |
| predicted_RBI | 0.374 | 0.025 |
| predicted_SLG | 0.426 | -0.008 |
| predicted_SO | 1.169 | 0.236 |
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.001 | 0.000 |
| predicted_AB | 4.390 | 0.000 |
| predicted_AVG | 0.285 | 0.005 |
| predicted_BB | 0.543 | -0.001 |
| predicted_H | 1.250 | 0.010 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.109 | 0.001 |
| predicted_OBP | 0.363 | 0.001 |
| predicted_R | 0.582 | 0.007 |
| predicted_RBI | 0.379 | 0.005 |
| predicted_SLG | 0.414 | -0.012 |
| predicted_SO | 1.171 | 0.003 |
AB rounded to 4 (raw=4.39), rates preserved: AVG=0.285 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.240 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.390 |
| predicted_AVG | 0.250 | -0.035 |
| predicted_BB | 0.000 | -0.543 |
| predicted_H | 1.000 | -0.250 |
| predicted_HR | 0.000 | -0.109 |
| predicted_OBP | 0.250 | -0.113 |
| predicted_R | 1.000 | 0.418 |
| predicted_RBI | 0.000 | -0.379 |
| predicted_SLG | 0.250 | -0.164 |
| predicted_SO | 1.000 | -0.171 |
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 | 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 | 7.000 | 0.000 | 0.000 | 0.000 | 1.000 | 4.000 | 3.000 | 4.000 | 0.3684 | 0.4545 | 0.3684 | 0.3684 | 0.0000 | 0.0526 | 0.1579 | 0.2105 |
| last_10 | 0.20 | 10 | - | 35.000 | 15.000 | 5.000 | 0.000 | 1.000 | 4.000 | 11.000 | 5.000 | 8.000 | 0.4286 | 0.4878 | 0.6571 | 0.4286 | 0.0286 | 0.1143 | 0.1429 | 0.2286 |
| season | 0.60 | 25 | - | 197.000 | 44.000 | 10.000 | 0.000 | 5.000 | 9.000 | 19.000 | 24.000 | 56.000 | 0.2234 | 0.3063 | 0.3503 | 0.2233 | 0.0254 | 0.0457 | 0.1218 | 0.2843 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3420 |
| predicted_3B | 0.0030 |
| predicted_AB | 5.9120 |
| predicted_AVG | 0.2883 |
| predicted_BB | 0.7480 |
| predicted_H | 1.7040 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.1330 |
| predicted_OBP | 0.3652 |
| predicted_R | 0.9380 |
| predicted_RBI | 0.4090 |
| predicted_SLG | 0.4145 |
| predicted_SO | 1.5010 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.3420 | 0.2397 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 3.3100 | 5.9120 | 4.3903 | model_form_blend |
| predicted_AVG | 0.2730 | 0.2883 | 0.2794 | model_form_blend |
| predicted_BB | 0.4000 | 0.7480 | 0.5445 | model_form_blend |
| predicted_H | 0.9100 | 1.7040 | 1.2397 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0900 | 0.1330 | 0.1079 | model_form_blend |
| predicted_OBP | 0.3600 | 0.3652 | 0.3622 | model_form_blend |
| predicted_R | 0.3170 | 0.9380 | 0.5748 | model_form_blend |
| predicted_RBI | 0.3500 | 0.4090 | 0.3745 | model_form_blend |
| predicted_SLG | 0.4340 | 0.4145 | 0.4259 | model_form_blend |
| predicted_SO | 0.9330 | 1.5010 | 1.1688 | 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 | 60 |
| Season rows before report date | 60 |
| 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 | 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.223 |
| 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 | 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 | 20260607_SF@CHC |
| game_type | full |
| mlbID | 805811 |
| playerID | 805811 |
| playerName | Bryce Eldridge |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.4 |
| sl_bb_percent | 11.7 |
| sl_woba | 0.351 |
| sl_xwoba | 0.377 |
| sl_xba | 0.294 |
| sl_xslg | 0.507 |
| sl_sweet_spot_percent | 36.1 |
| sl_barrel_batted_rate | 9.8 |
| sl_hard_hit_percent | 52.5 |
| sl_exit_velocity_avg | 92.0 |
| sl_launch_angle_avg | 16.9 |
| sl_whiff_percent | 22.8 |
| 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.229 | 0.000 | 0.000 | Hitting_2B | 0.222 | 0.000 | -0.222 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.143 | 3.000 | 4.000 | Hitting_AB | 3.056 | 4.000 | -0.056 | -1.000 |
| predicted_AVG | 0.253 | 0.000 | 0.250 | Hitting_AVG | 0.282 | 0.000 | -0.282 | 0.000 |
| predicted_BB | 0.143 | 0.000 | 0.000 | Hitting_BB | 0.139 | 0.000 | -0.139 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.650 | 0.000 | 1.000 | Hitting_H | 0.861 | 0.000 | -0.861 | 0.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_OBP | 0.302 | 0.000 | 0.250 | Hitting_OBP | 0.313 | 0.000 | -0.313 | 0.000 |
| predicted_R | 0.600 | 0.000 | 1.000 | Hitting_R | 0.583 | 0.000 | -0.583 | 0.000 |
| predicted_RBI | 0.450 | 0.000 | 1.000 | Hitting_RBI | 0.611 | 0.000 | -0.611 | 0.000 |
| predicted_SLG | 0.456 | 0.000 | 0.250 | Hitting_SLG | 0.682 | 0.000 | -0.682 | 0.000 |
| predicted_SO | 0.800 | 1.000 | 1.000 | Hitting_SO | 0.778 | 1.000 | 0.222 | 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 | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.8000 -> 1.0000 (boost 0.2000, worse) |
| Biggest Deboost | predicted_H: 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.1430 -> 4.0501 (boost 0.9071, 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.5117 -> 0.5190 (boost 0.0073, better) | predicted_OBP: 0.3072 -> 0.2814 (deboost -0.0258, 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_RBI: 0.7148 -> 1.0000 (boost 0.2852, better) | predicted_HR: 0.2848 -> 0.0000 (deboost -0.2848, worse) | AB rounded to 4 (raw=4.05), rates preserved: AVG=0.240 HR/AB=0.070 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6979 -> 1.0000 (boost 0.3021, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2396 -> 0.2500 (boost 0.0104, better) | predicted_SLG: 0.5190 -> 0.2500 (deboost -0.2690, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 0 | 4 | 0 | 4 | - | 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.5190 (boost 0.2690, better) | predicted_AVG: 0.2500 -> 0.2396 (deboost -0.0104, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "606992",
"player_name": "Eric Haase",
"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.229,
"predicted_3B": 0.0,
"predicted_AB": 3.143,
"predicted_AVG": 0.253,
"predicted_BB": 0.143,
"predicted_H": 0.65,
"predicted_HR": 0.15,
"predicted_OBP": 0.302,
"predicted_R": 0.6,
"predicted_RBI": 0.45,
"predicted_SLG": 0.456,
"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.2738,
"predicted_3B": 0.0016,
"predicted_AB": 4.0501,
"predicted_AVG": 0.2578,
"predicted_BB": 0.2361,
"predicted_H": 0.9624,
"predicted_HBP": 0.01,
"predicted_HR": 0.2828,
"predicted_OBP": 0.3072,
"predicted_R": 0.6896,
"predicted_RBI": 0.7063,
"predicted_SLG": 0.5117,
"predicted_SO": 1.0438
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.229,
"after": 0.2738,
"delta": 0.0448,
"percent_delta": 0.1956,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0016,
"delta": 0.0016,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.143,
"after": 4.0501,
"delta": 0.9071,
"percent_delta": 0.2886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2578,
"delta": 0.0048,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.143,
"after": 0.2361,
"delta": 0.0931,
"percent_delta": 0.651,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 0.9624,
"delta": 0.3124,
"percent_delta": 0.4806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2828,
"delta": 0.1328,
"percent_delta": 0.8853,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.302,
"after": 0.3072,
"delta": 0.0052,
"percent_delta": 0.0172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6,
"after": 0.6896,
"delta": 0.0896,
"percent_delta": 0.1493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.7063,
"delta": 0.2563,
"percent_delta": 0.5696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.5117,
"delta": 0.0557,
"percent_delta": 0.1221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8,
"after": 1.0438,
"delta": 0.2438,
"percent_delta": 0.3048,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 9,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.143,
"after": 4.0501,
"delta": 0.9071,
"percent_delta": 0.2886,
"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": 8,
"season": 15
}
},
{
"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.2738,
"predicted_3B": 0.0016,
"predicted_AB": 4.0501,
"predicted_AVG": 0.2396,
"predicted_BB": 0.2356,
"predicted_H": 0.9706,
"predicted_HBP": 0.01,
"predicted_HR": 0.2848,
"predicted_OBP": 0.2814,
"predicted_R": 0.6979,
"predicted_RBI": 0.7148,
"predicted_SLG": 0.519,
"predicted_SO": 1.0462
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2738,
"after": 0.2738,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0016,
"after": 0.0016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0501,
"after": 4.0501,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2578,
"after": 0.2396,
"delta": -0.0182,
"percent_delta": -0.0706,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2361,
"after": 0.2356,
"delta": -0.0005,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9624,
"after": 0.9706,
"delta": 0.0082,
"percent_delta": 0.0085,
"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.2828,
"after": 0.2848,
"delta": 0.002,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3072,
"after": 0.2814,
"delta": -0.0258,
"percent_delta": -0.084,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6896,
"after": 0.6979,
"delta": 0.0083,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7063,
"after": 0.7148,
"delta": 0.0085,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5117,
"after": 0.519,
"delta": 0.0073,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0438,
"after": 1.0462,
"delta": 0.0024,
"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_SLG",
"before": 0.5117,
"after": 0.519,
"delta": 0.0073,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3072,
"after": 0.2814,
"delta": -0.0258,
"percent_delta": -0.084,
"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.240 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.2738,
"after": 0.0,
"delta": -0.2738,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0016,
"after": 0.0,
"delta": -0.0016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0501,
"after": 4.0,
"delta": -0.0501,
"percent_delta": -0.0124,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2356,
"after": 0.0,
"delta": -0.2356,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9706,
"after": 1.0,
"delta": 0.0294,
"percent_delta": 0.0303,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.2848,
"after": 0.0,
"delta": -0.2848,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7148,
"after": 1.0,
"delta": 0.2852,
"percent_delta": 0.399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0462,
"after": 1.0,
"delta": -0.0462,
"percent_delta": -0.0442,
"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.7148,
"after": 1.0,
"delta": 0.2852,
"percent_delta": 0.399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2848,
"after": 0.0,
"delta": -0.2848,
"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.6979,
"after": 1.0,
"delta": 0.3021,
"percent_delta": 0.4329,
"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.6979,
"after": 1.0,
"delta": 0.3021,
"percent_delta": 0.4329,
"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.2396,
"after": 0.25,
"delta": 0.0104,
"percent_delta": 0.0434,
"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.2814,
"after": 0.25,
"delta": -0.0314,
"percent_delta": -0.1116,
"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.519,
"after": 0.25,
"delta": -0.269,
"percent_delta": -0.5183,
"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.2396,
"after": 0.25,
"delta": 0.0104,
"percent_delta": 0.0434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.519,
"after": 0.25,
"delta": -0.269,
"percent_delta": -0.5183,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"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": 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_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.2396,
"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.2814,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.519,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2396,
"delta": -0.0104,
"percent_delta": -0.0414,
"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.2814,
"delta": 0.0314,
"percent_delta": 0.1257,
"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.519,
"delta": 0.269,
"percent_delta": 1.0759,
"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.519,
"delta": 0.269,
"percent_delta": 1.0759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2396,
"delta": -0.0104,
"percent_delta": -0.0414,
"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.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": 3.143,
"after": 3.0,
"delta": -0.143,
"percent_delta": -0.0455,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2396,
"delta": -0.0134,
"percent_delta": -0.053,
"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.65,
"after": 0.0,
"delta": -0.65,
"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.302,
"after": 0.2814,
"delta": -0.0206,
"percent_delta": -0.0682,
"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.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.519,
"delta": 0.063,
"percent_delta": 0.1382,
"direction": "boost",
"projection_effect": "better",
"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": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"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": "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.000 | - |
| predicted_AB | 3.143 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.143 | - |
| predicted_H | 0.650 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.302 | - |
| predicted_R | 0.600 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.456 | - |
| 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.274 | 0.045 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 4.050 | 0.907 |
| predicted_AVG | 0.258 | 0.005 |
| predicted_BB | 0.236 | 0.093 |
| predicted_H | 0.962 | 0.312 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.283 | 0.133 |
| predicted_OBP | 0.307 | 0.005 |
| predicted_R | 0.690 | 0.090 |
| predicted_RBI | 0.706 | 0.256 |
| predicted_SLG | 0.512 | 0.056 |
| predicted_SO | 1.044 | 0.244 |
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.274 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 4.050 | 0.000 |
| predicted_AVG | 0.240 | -0.018 |
| predicted_BB | 0.236 | -0.001 |
| predicted_H | 0.971 | 0.008 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.285 | 0.002 |
| predicted_OBP | 0.281 | -0.026 |
| predicted_R | 0.698 | 0.008 |
| predicted_RBI | 0.715 | 0.008 |
| predicted_SLG | 0.519 | 0.007 |
| predicted_SO | 1.046 | 0.002 |
AB rounded to 4 (raw=4.05), rates preserved: AVG=0.240 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.274 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | -0.050 |
| predicted_AVG | 0.250 | 0.010 |
| predicted_BB | 0.000 | -0.236 |
| predicted_H | 1.000 | 0.029 |
| predicted_HR | 0.000 | -0.285 |
| predicted_OBP | 0.250 | -0.031 |
| predicted_R | 1.000 | 0.302 |
| predicted_RBI | 1.000 | 0.285 |
| predicted_SLG | 0.250 | -0.269 |
| predicted_SO | 1.000 | -0.046 |
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 | 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 | 4.000 | 1.000 | 2.000 | 5.000 | 0.2000 | 0.2941 | 0.4667 | 0.2000 | 0.0667 | 0.2667 | 0.1333 | 0.3333 |
| last_10 | 0.20 | 8 | - | 28.000 | 9.000 | 1.000 | 0.000 | 4.000 | 7.000 | 4.000 | 2.000 | 7.000 | 0.3214 | 0.3667 | 0.7857 | 0.3214 | 0.1429 | 0.2500 | 0.0714 | 0.2500 |
| season | 0.60 | 15 | - | 110.000 | 31.000 | 8.000 | 0.000 | 12.000 | 22.000 | 21.000 | 5.000 | 28.000 | 0.2818 | 0.3130 | 0.6818 | 0.2818 | 0.1091 | 0.2000 | 0.0454 | 0.2545 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3440 |
| predicted_3B | 0.0040 |
| predicted_AB | 5.4720 |
| predicted_AVG | 0.2653 |
| predicted_BB | 0.3820 |
| predicted_H | 1.4520 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.4910 |
| predicted_OBP | 0.3154 |
| predicted_R | 0.8300 |
| predicted_RBI | 1.1080 |
| predicted_SLG | 0.5989 |
| predicted_SO | 1.4260 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2290 | 0.3440 | 0.2738 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0016 | model_form_blend |
| predicted_AB | 3.1430 | 5.4720 | 4.0501 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2653 | 0.2578 | model_form_blend |
| predicted_BB | 0.1430 | 0.3820 | 0.2361 | model_form_blend |
| predicted_H | 0.6500 | 1.4520 | 0.9624 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.1500 | 0.4910 | 0.2828 | model_form_blend |
| predicted_OBP | 0.3020 | 0.3154 | 0.3072 | model_form_blend |
| predicted_R | 0.6000 | 0.8300 | 0.6896 | model_form_blend |
| predicted_RBI | 0.4500 | 1.1080 | 0.7063 | model_form_blend |
| predicted_SLG | 0.4560 | 0.5989 | 0.5117 | model_form_blend |
| predicted_SO | 0.8000 | 1.4260 | 1.0438 | 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 | 35 |
| 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.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 | 1 |
| 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 | 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 | 20260606_SF@CHC |
| game_type | full |
| mlbID | 606992 |
| playerID | 606992 |
| playerName | Eric Haase |
| pos | C |
| started | True |
| startingPosition | C |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-06 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.379 |
| sl_xwoba | 0.349 |
| sl_xba | 0.252 |
| sl_xslg | 0.518 |
| sl_sweet_spot_percent | 37.5 |
| sl_barrel_batted_rate | 21.9 |
| sl_hard_hit_percent | 34.4 |
| sl_exit_velocity_avg | 86.9 |
| sl_launch_angle_avg | 17.2 |
| sl_whiff_percent | 36.0 |
| 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.253 | 1.000 | 0.000 | Hitting_2B | 0.253 | 0.000 | 0.747 | 1.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.823 | 3.000 | 6.000 | Hitting_AB | 3.823 | 3.000 | -0.823 | 0.000 |
| predicted_AVG | 0.251 | 0.333 | 0.333 | Hitting_AVG | 0.228 | 0.667 | 0.105 | -0.333 |
| predicted_BB | 0.468 | 0.000 | 1.000 | Hitting_BB | 0.468 | 1.000 | -0.468 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.920 | 1.000 | 2.000 | Hitting_H | 0.873 | 2.000 | 0.127 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_OBP | 0.345 | 0.333 | 0.429 | Hitting_OBP | 0.319 | 0.750 | 0.014 | -0.417 |
| predicted_R | 0.426 | 0.000 | 1.000 | Hitting_R | 0.426 | 0.000 | -0.426 | 0.000 |
| predicted_RBI | 0.860 | 0.000 | 2.000 | Hitting_RBI | 0.392 | 1.000 | -0.392 | -1.000 |
| predicted_SLG | 0.443 | 0.667 | 0.333 | Hitting_SLG | 0.330 | 0.667 | 0.337 | 0.000 |
| predicted_SO | 0.996 | 1.000 | 1.000 | Hitting_SO | 0.996 | 0.000 | 0.004 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_2B: 0.2530 -> 1.0000 (boost 0.7470, better) |
| Biggest Deboost | predicted_RBI: 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.8230 -> 6.4119 (boost 2.5889, 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 | 2 | 0 | 2 | 0 | predicted_SLG: 0.4698 -> 0.4808 (boost 0.0110, better) | - | 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_H: 1.7693 -> 2.0000 (boost 0.2307, better) | predicted_SO: 1.5305 -> 1.0000 (deboost -0.5305, better) | AB rounded to 6 (raw=6.41), rates preserved: AVG=0.276 HR/AB=0.044 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8358 -> 1.0000 (boost 0.1642, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3536 -> 0.4290 (boost 0.0754, better) | predicted_SLG: 0.4808 -> 0.3330 (deboost -0.1478, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 1 | 5 | 1 | 5 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4808 (boost 0.1478, better) | predicted_OBP: 0.4290 -> 0.3536 (deboost -0.0754, 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.253,
"predicted_3B": 0.017,
"predicted_AB": 3.823,
"predicted_AVG": 0.251,
"predicted_BB": 0.468,
"predicted_H": 0.92,
"predicted_HR": 0.14,
"predicted_OBP": 0.345,
"predicted_R": 0.426,
"predicted_RBI": 0.86,
"predicted_SLG": 0.443,
"predicted_SO": 0.996
},
"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.4337,
"predicted_3B": 0.021,
"predicted_AB": 6.4119,
"predicted_AVG": 0.2683,
"predicted_BB": 0.7723,
"predicted_H": 1.7544,
"predicted_HBP": 0.241,
"predicted_HR": 0.2774,
"predicted_OBP": 0.3536,
"predicted_R": 0.8258,
"predicted_RBI": 1.7682,
"predicted_SLG": 0.4698,
"predicted_SO": 1.527
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.253,
"after": 0.4337,
"delta": 0.1807,
"percent_delta": 0.7142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.021,
"delta": 0.004,
"percent_delta": 0.2353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.823,
"after": 6.4119,
"delta": 2.5889,
"percent_delta": 0.6772,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2683,
"delta": 0.0173,
"percent_delta": 0.0689,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.468,
"after": 0.7723,
"delta": 0.3043,
"percent_delta": 0.6502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 1.7544,
"delta": 0.8344,
"percent_delta": 0.907,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2774,
"delta": 0.1374,
"percent_delta": 0.9814,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3536,
"delta": 0.0086,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.426,
"after": 0.8258,
"delta": 0.3998,
"percent_delta": 0.9385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.86,
"after": 1.7682,
"delta": 0.9082,
"percent_delta": 1.056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.443,
"after": 0.4698,
"delta": 0.0268,
"percent_delta": 0.0605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.996,
"after": 1.527,
"delta": 0.531,
"percent_delta": 0.5331,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 11,
"deboosted_metrics": 0,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.823,
"after": 6.4119,
"delta": 2.5889,
"percent_delta": 0.6772,
"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.4337,
"predicted_3B": 0.021,
"predicted_AB": 6.4119,
"predicted_AVG": 0.2759,
"predicted_BB": 0.7705,
"predicted_H": 1.7693,
"predicted_HBP": 0.241,
"predicted_HR": 0.2793,
"predicted_OBP": 0.3536,
"predicted_R": 0.8358,
"predicted_RBI": 1.7896,
"predicted_SLG": 0.4808,
"predicted_SO": 1.5305
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4337,
"after": 0.4337,
"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": 6.4119,
"after": 6.4119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2683,
"after": 0.2759,
"delta": 0.0076,
"percent_delta": 0.0283,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7723,
"after": 0.7705,
"delta": -0.0018,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7544,
"after": 1.7693,
"delta": 0.0149,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.241,
"after": 0.241,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2774,
"after": 0.2793,
"delta": 0.0019,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3536,
"after": 0.3536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8258,
"after": 0.8358,
"delta": 0.01,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.7682,
"after": 1.7896,
"delta": 0.0214,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4698,
"after": 0.4808,
"delta": 0.011,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.527,
"after": 1.5305,
"delta": 0.0035,
"percent_delta": 0.0023,
"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.4698,
"after": 0.4808,
"delta": 0.011,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.41), rates preserved: AVG=0.276 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 6.0,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4337,
"after": 0.0,
"delta": -0.4337,
"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": 6.4119,
"after": 6.0,
"delta": -0.4119,
"percent_delta": -0.0642,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7705,
"after": 1.0,
"delta": 0.2295,
"percent_delta": 0.2979,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7693,
"after": 2.0,
"delta": 0.2307,
"percent_delta": 0.1304,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.241,
"after": 0.0,
"delta": -0.241,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2793,
"after": 0.0,
"delta": -0.2793,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.7896,
"after": 2.0,
"delta": 0.2104,
"percent_delta": 0.1176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5305,
"after": 1.0,
"delta": -0.5305,
"percent_delta": -0.3466,
"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_H",
"before": 1.7693,
"after": 2.0,
"delta": 0.2307,
"percent_delta": 0.1304,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5305,
"after": 1.0,
"delta": -0.5305,
"percent_delta": -0.3466,
"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": 6.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": 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": 6.0,
"after": 6.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": 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_R",
"before": 0.8358,
"after": 1.0,
"delta": 0.1642,
"percent_delta": 0.1965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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_SO",
"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.8358,
"after": 1.0,
"delta": 0.1642,
"percent_delta": 0.1965,
"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": 6.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.429,
"predicted_R": 1.0,
"predicted_RBI": 2.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2759,
"after": 0.333,
"delta": 0.0571,
"percent_delta": 0.207,
"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": 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_OBP",
"before": 0.3536,
"after": 0.429,
"delta": 0.0754,
"percent_delta": 0.2132,
"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_SLG",
"before": 0.4808,
"after": 0.333,
"delta": -0.1478,
"percent_delta": -0.3074,
"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.3536,
"after": 0.429,
"delta": 0.0754,
"percent_delta": 0.2132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4808,
"after": 0.333,
"delta": -0.1478,
"percent_delta": -0.3074,
"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": 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": 6.0,
"after": 3.0,
"delta": -3.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 2.0,
"after": 0.0,
"delta": -2.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": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 5,
"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": 6.0,
"after": 3.0,
"delta": -3.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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2759,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.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.4808,
"predicted_SO": 1.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.2759,
"delta": -0.0571,
"percent_delta": -0.1713,
"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.429,
"after": 0.3536,
"delta": -0.0754,
"percent_delta": -0.1757,
"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.4808,
"delta": 0.1478,
"percent_delta": 0.4439,
"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.4808,
"delta": 0.1478,
"percent_delta": 0.4439,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3536,
"delta": -0.0754,
"percent_delta": -0.1757,
"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.253,
"after": 1.0,
"delta": 0.747,
"percent_delta": 2.9526,
"direction": "boost",
"projection_effect": "better",
"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.823,
"after": 3.0,
"delta": -0.823,
"percent_delta": -0.2153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2759,
"delta": 0.0249,
"percent_delta": 0.0992,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.468,
"after": 0.0,
"delta": -0.468,
"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.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3536,
"delta": 0.0086,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"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.86,
"after": 0.0,
"delta": -0.86,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.443,
"after": 0.4808,
"delta": 0.0378,
"percent_delta": 0.0853,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.996,
"after": 1.0,
"delta": 0.004,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.253,
"after": 1.0,
"delta": 0.747,
"percent_delta": 2.9526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"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": "neutral"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.253 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 3.823 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.468 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.345 | - |
| predicted_R | 0.426 | - |
| predicted_RBI | 0.860 | - |
| predicted_SLG | 0.443 | - |
| predicted_SO | 0.996 | - |
Final model 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.434 | 0.181 |
| predicted_3B | 0.021 | 0.004 |
| predicted_AB | 6.412 | 2.589 |
| predicted_AVG | 0.268 | 0.017 |
| predicted_BB | 0.772 | 0.304 |
| predicted_H | 1.754 | 0.834 |
| predicted_HBP | 0.241 | - |
| predicted_HR | 0.277 | 0.137 |
| predicted_OBP | 0.354 | 0.009 |
| predicted_R | 0.826 | 0.400 |
| predicted_RBI | 1.768 | 0.908 |
| predicted_SLG | 0.470 | 0.027 |
| predicted_SO | 1.527 | 0.531 |
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.434 | 0.000 |
| predicted_3B | 0.021 | 0.000 |
| predicted_AB | 6.412 | 0.000 |
| predicted_AVG | 0.276 | 0.008 |
| predicted_BB | 0.770 | -0.002 |
| predicted_H | 1.769 | 0.015 |
| predicted_HBP | 0.241 | 0.000 |
| predicted_HR | 0.279 | 0.002 |
| predicted_OBP | 0.354 | 0.000 |
| predicted_R | 0.836 | 0.010 |
| predicted_RBI | 1.790 | 0.021 |
| predicted_SLG | 0.481 | 0.011 |
| predicted_SO | 1.530 | 0.004 |
AB rounded to 6 (raw=6.41), rates preserved: AVG=0.276 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 6.000 | - |
| BB | 1.000 | - |
| H | 2.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 2.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 | 6.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 2.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.434 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 6.000 | -0.412 |
| predicted_AVG | 0.333 | 0.057 |
| predicted_BB | 1.000 | 0.230 |
| predicted_H | 2.000 | 0.231 |
| predicted_HR | 0.000 | -0.279 |
| predicted_OBP | 0.429 | 0.075 |
| predicted_R | 1.000 | 0.164 |
| predicted_RBI | 2.000 | 0.210 |
| predicted_SLG | 0.333 | -0.148 |
| predicted_SO | 1.000 | -0.530 |
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 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -2.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 | 1.000 | 0.000 | 2.000 | 12.000 | 3.000 | 2.000 | 3.000 | 0.4375 | 0.4762 | 0.8750 | 0.4375 | 0.1250 | 0.7500 | 0.1250 | 0.1875 |
| last_10 | 0.20 | 10 | - | 36.000 | 12.000 | 3.000 | 0.000 | 3.000 | 17.000 | 6.000 | 4.000 | 6.000 | 0.3333 | 0.3953 | 0.6667 | 0.3333 | 0.0833 | 0.4722 | 0.1111 | 0.1667 |
| season | 0.60 | 64 | - | 906.000 | 207.000 | 60.000 | 4.000 | 8.000 | 93.000 | 101.000 | 111.000 | 236.000 | 0.2285 | 0.3194 | 0.3300 | 0.2285 | 0.0088 | 0.1027 | 0.1225 | 0.2605 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6620 |
| predicted_3B | 0.0260 |
| predicted_AB | 9.6840 |
| predicted_AVG | 0.2901 |
| predicted_BB | 1.1570 |
| predicted_H | 2.8090 |
| predicted_HBP | 0.2410 |
| predicted_HR | 0.4510 |
| predicted_OBP | 0.3645 |
| predicted_R | 1.3310 |
| predicted_RBI | 2.9160 |
| predicted_SLG | 0.5036 |
| predicted_SO | 2.1980 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2530 | 0.6620 | 0.4337 | model_form_blend |
| predicted_3B | 0.0170 | 0.0260 | 0.0210 | model_form_blend |
| predicted_AB | 3.8230 | 9.6840 | 6.4119 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2901 | 0.2683 | model_form_blend |
| predicted_BB | 0.4680 | 1.1570 | 0.7723 | model_form_blend |
| predicted_H | 0.9200 | 2.8090 | 1.7544 | model_form_blend |
| predicted_HBP | - | 0.2410 | 0.2410 | form_only |
| predicted_HR | 0.1400 | 0.4510 | 0.2774 | model_form_blend |
| predicted_OBP | 0.3450 | 0.3645 | 0.3536 | model_form_blend |
| predicted_R | 0.4260 | 1.3310 | 0.8258 | model_form_blend |
| predicted_RBI | 0.8600 | 2.9160 | 1.7682 | model_form_blend |
| predicted_SLG | 0.4430 | 0.5036 | 0.4698 | model_form_blend |
| predicted_SO | 0.9960 | 2.1980 | 1.5270 | 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 | 237 |
| 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 | 1 |
| 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 | 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 | 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 | 20260607_SF@CHC |
| game_type | full |
| mlbID | 656305 |
| playerID | 656305 |
| playerName | Matt Chapman |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.6 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.312 |
| sl_xwoba | 0.281 |
| sl_xba | 0.213 |
| sl_xslg | 0.314 |
| sl_sweet_spot_percent | 23.9 |
| sl_barrel_batted_rate | 5.5 |
| sl_hard_hit_percent | 35.3 |
| sl_exit_velocity_avg | 87.7 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 22.8 |
| 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.241 | 0.000 | 0.000 | Hitting_2B | 0.241 | 0.000 | -0.241 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_AB | 3.980 | 4.000 | 7.000 | Hitting_AB | 3.936 | 4.000 | 0.064 | 0.000 |
| predicted_AVG | 0.292 | 0.000 | 0.286 | Hitting_AVG | 0.299 | 0.250 | -0.299 | -0.250 |
| predicted_BB | 0.222 | 0.000 | 0.000 | Hitting_BB | 0.222 | 0.000 | -0.222 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.160 | 0.000 | 2.000 | Hitting_H | 1.177 | 1.000 | -1.177 | -1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.059 | 0.000 | -0.059 | 0.000 |
| predicted_OBP | 0.385 | 0.000 | 0.286 | Hitting_OBP | 0.343 | 0.250 | -0.343 | -0.250 |
| predicted_R | 0.502 | 0.000 | 1.000 | Hitting_R | 0.502 | 0.000 | -0.502 | 0.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.384 | 1.000 | -0.384 | -1.000 |
| predicted_SLG | 0.460 | 0.000 | 0.286 | Hitting_SLG | 0.421 | 0.250 | -0.421 | -0.250 |
| predicted_SO | 0.424 | 0.000 | 1.000 | Hitting_SO | 0.424 | 0.000 | -0.424 | 0.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_AVG: 0.2920 -> 0.3545 (boost 0.0625, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.9800 -> 6.5685 (boost 2.5885, 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.3317 -> 0.3545 (boost 0.0228, better) | predicted_OBP: 0.3988 -> 0.3806 (deboost -0.0182, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 3 | 6 | 2 | 7 | predicted_AB: 6.5685 -> 7.0000 (boost 0.4315, better) | predicted_2B: 0.4580 -> 0.0000 (deboost -0.4580, worse) | AB rounded to 7 (raw=6.57), rates preserved: AVG=0.354 HR/AB=0.013 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4792 -> 0.2860 (deboost -0.1932, 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: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2860 -> 0.4792 (boost 0.1932, 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": "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.241,
"predicted_3B": 0.03,
"predicted_AB": 3.98,
"predicted_AVG": 0.292,
"predicted_BB": 0.222,
"predicted_H": 1.16,
"predicted_HR": 0.07,
"predicted_OBP": 0.385,
"predicted_R": 0.502,
"predicted_RBI": 0.43,
"predicted_SLG": 0.46,
"predicted_SO": 0.424
},
"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.458,
"predicted_3B": 0.0568,
"predicted_AB": 6.5685,
"predicted_AVG": 0.3317,
"predicted_BB": 0.2775,
"predicted_H": 2.3088,
"predicted_HBP": 0.219,
"predicted_HR": 0.0819,
"predicted_OBP": 0.3988,
"predicted_R": 1.0253,
"predicted_RBI": 0.6879,
"predicted_SLG": 0.4797,
"predicted_SO": 0.6612
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.241,
"after": 0.458,
"delta": 0.217,
"percent_delta": 0.9004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0568,
"delta": 0.0268,
"percent_delta": 0.8933,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.98,
"after": 6.5685,
"delta": 2.5885,
"percent_delta": 0.6504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.292,
"after": 0.3317,
"delta": 0.0397,
"percent_delta": 0.136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.2775,
"delta": 0.0555,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.16,
"after": 2.3088,
"delta": 1.1488,
"percent_delta": 0.9903,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0819,
"delta": 0.0119,
"percent_delta": 0.17,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.385,
"after": 0.3988,
"delta": 0.0138,
"percent_delta": 0.0358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.502,
"after": 1.0253,
"delta": 0.5233,
"percent_delta": 1.0424,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.6879,
"delta": 0.2579,
"percent_delta": 0.5998,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.46,
"after": 0.4797,
"delta": 0.0197,
"percent_delta": 0.0428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.424,
"after": 0.6612,
"delta": 0.2372,
"percent_delta": 0.5594,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 10,
"deboosted_metrics": 0,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.98,
"after": 6.5685,
"delta": 2.5885,
"percent_delta": 0.6504,
"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.458,
"predicted_3B": 0.0568,
"predicted_AB": 6.5685,
"predicted_AVG": 0.3545,
"predicted_BB": 0.2769,
"predicted_H": 2.3284,
"predicted_HBP": 0.219,
"predicted_HR": 0.0825,
"predicted_OBP": 0.3806,
"predicted_R": 1.0377,
"predicted_RBI": 0.6962,
"predicted_SLG": 0.4792,
"predicted_SO": 0.6627
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.458,
"after": 0.458,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0568,
"after": 0.0568,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.5685,
"after": 6.5685,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3317,
"after": 0.3545,
"delta": 0.0228,
"percent_delta": 0.0687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2775,
"after": 0.2769,
"delta": -0.0006,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.3088,
"after": 2.3284,
"delta": 0.0196,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.219,
"after": 0.219,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0819,
"after": 0.0825,
"delta": 0.0006,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3988,
"after": 0.3806,
"delta": -0.0182,
"percent_delta": -0.0456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0253,
"after": 1.0377,
"delta": 0.0124,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6879,
"after": 0.6962,
"delta": 0.0083,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4797,
"after": 0.4792,
"delta": -0.0005,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6612,
"after": 0.6627,
"delta": 0.0015,
"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_AVG",
"before": 0.3317,
"after": 0.3545,
"delta": 0.0228,
"percent_delta": 0.0687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3988,
"after": 0.3806,
"delta": -0.0182,
"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 7 (raw=6.57), rates preserved: AVG=0.354 HR/AB=0.013",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.0,
"predicted_BB": 0.0,
"predicted_H": 2.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.458,
"after": 0.0,
"delta": -0.458,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0568,
"after": 0.0,
"delta": -0.0568,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.5685,
"after": 7.0,
"delta": 0.4315,
"percent_delta": 0.0657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2769,
"after": 0.0,
"delta": -0.2769,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 2.3284,
"after": 2.0,
"delta": -0.3284,
"percent_delta": -0.141,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.219,
"after": 0.0,
"delta": -0.219,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0825,
"after": 0.0,
"delta": -0.0825,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6962,
"after": 1.0,
"delta": 0.3038,
"percent_delta": 0.4364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6627,
"after": 1.0,
"delta": 0.3373,
"percent_delta": 0.509,
"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": 6.5685,
"after": 7.0,
"delta": 0.4315,
"percent_delta": 0.0657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.458,
"after": 0.0,
"delta": -0.458,
"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": 7.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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.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": 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_R",
"before": 1.0377,
"after": 1.0,
"delta": -0.0377,
"percent_delta": -0.0363,
"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_SO",
"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": 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": 7.0,
"predicted_AVG": 0.286,
"predicted_BB": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.286,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3545,
"after": 0.286,
"delta": -0.0685,
"percent_delta": -0.1932,
"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": 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_OBP",
"before": 0.3806,
"after": 0.286,
"delta": -0.0946,
"percent_delta": -0.2486,
"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.4792,
"after": 0.286,
"delta": -0.1932,
"percent_delta": -0.4032,
"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.4792,
"after": 0.286,
"delta": -0.1932,
"percent_delta": -0.4032,
"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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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": 0.0,
"delta": -2.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": 7.0,
"after": 4.0,
"delta": -3.0,
"percent_delta": -0.4286,
"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.3545,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3806,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4792,
"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.286,
"after": 0.3545,
"delta": 0.0685,
"percent_delta": 0.2395,
"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.286,
"after": 0.3806,
"delta": 0.0946,
"percent_delta": 0.3307,
"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.286,
"after": 0.4792,
"delta": 0.1932,
"percent_delta": 0.6754,
"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.286,
"after": 0.4792,
"delta": 0.1932,
"percent_delta": 0.6754,
"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.241,
"after": 0.0,
"delta": -0.241,
"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.98,
"after": 4.0,
"delta": 0.02,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.292,
"after": 0.3545,
"delta": 0.0625,
"percent_delta": 0.214,
"direction": "boost",
"projection_effect": "better",
"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": 1.16,
"after": 0.0,
"delta": -1.16,
"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.385,
"after": 0.3806,
"delta": -0.0044,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.502,
"after": 0.0,
"delta": -0.502,
"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.46,
"after": 0.4792,
"delta": 0.0192,
"percent_delta": 0.0417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.424,
"after": 0.0,
"delta": -0.424,
"percent_delta": -1.0,
"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_AVG",
"before": 0.292,
"after": 0.3545,
"delta": 0.0625,
"percent_delta": 0.214,
"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.241 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.980 | - |
| predicted_AVG | 0.292 | - |
| predicted_BB | 0.222 | - |
| predicted_H | 1.160 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.385 | - |
| predicted_R | 0.502 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.460 | - |
| predicted_SO | 0.424 | - |
Final model 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.458 | 0.217 |
| predicted_3B | 0.057 | 0.027 |
| predicted_AB | 6.569 | 2.589 |
| predicted_AVG | 0.332 | 0.040 |
| predicted_BB | 0.278 | 0.056 |
| predicted_H | 2.309 | 1.149 |
| predicted_HBP | 0.219 | - |
| predicted_HR | 0.082 | 0.012 |
| predicted_OBP | 0.399 | 0.014 |
| predicted_R | 1.025 | 0.523 |
| predicted_RBI | 0.688 | 0.258 |
| predicted_SLG | 0.480 | 0.020 |
| predicted_SO | 0.661 | 0.237 |
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.458 | 0.000 |
| predicted_3B | 0.057 | 0.000 |
| predicted_AB | 6.569 | 0.000 |
| predicted_AVG | 0.354 | 0.023 |
| predicted_BB | 0.277 | -0.001 |
| predicted_H | 2.328 | 0.020 |
| predicted_HBP | 0.219 | 0.000 |
| predicted_HR | 0.083 | 0.001 |
| predicted_OBP | 0.381 | -0.018 |
| predicted_R | 1.038 | 0.012 |
| predicted_RBI | 0.696 | 0.008 |
| predicted_SLG | 0.479 | -0.001 |
| predicted_SO | 0.663 | 0.001 |
AB rounded to 7 (raw=6.57), rates preserved: AVG=0.354 HR/AB=0.013
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.000 | - |
| BB | 0.000 | - |
| H | 2.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 | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 2.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.458 |
| predicted_3B | 0.000 | -0.057 |
| predicted_AB | 7.000 | 0.431 |
| predicted_AVG | 0.286 | -0.069 |
| predicted_BB | 0.000 | -0.277 |
| predicted_H | 2.000 | -0.328 |
| predicted_HR | 0.000 | -0.083 |
| predicted_OBP | 0.286 | -0.095 |
| predicted_R | 1.000 | -0.038 |
| predicted_RBI | 1.000 | 0.304 |
| predicted_SLG | 0.286 | -0.193 |
| predicted_SO | 1.000 | 0.337 |
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 | -3.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 10.000 | 2.000 | 0.000 | 0.000 | 2.000 | 5.000 | 0.000 | 2.000 | 0.4762 | 0.5000 | 0.5714 | 0.4762 | 0.0000 | 0.0952 | 0.0000 | 0.0952 |
| last_10 | 0.20 | 10 | - | 41.000 | 23.000 | 4.000 | 1.000 | 0.000 | 5.000 | 10.000 | 0.000 | 2.000 | 0.5610 | 0.5714 | 0.7073 | 0.5610 | 0.0000 | 0.1220 | 0.0000 | 0.0488 |
| season | 0.60 | 57 | - | 799.000 | 239.000 | 49.000 | 6.000 | 12.000 | 78.000 | 102.000 | 45.000 | 86.000 | 0.2991 | 0.3426 | 0.4205 | 0.2991 | 0.0150 | 0.0976 | 0.0563 | 0.1076 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7340 |
| predicted_3B | 0.0910 |
| predicted_AB | 9.8610 |
| predicted_AVG | 0.3823 |
| predicted_BB | 0.3480 |
| predicted_H | 3.7700 |
| predicted_HBP | 0.2190 |
| predicted_HR | 0.0970 |
| predicted_OBP | 0.4163 |
| predicted_R | 1.6910 |
| predicted_RBI | 1.0160 |
| predicted_SLG | 0.5047 |
| predicted_SO | 0.9630 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2410 | 0.7340 | 0.4580 | model_form_blend |
| predicted_3B | 0.0300 | 0.0910 | 0.0568 | model_form_blend |
| predicted_AB | 3.9800 | 9.8610 | 6.5685 | model_form_blend |
| predicted_AVG | 0.2920 | 0.3823 | 0.3317 | model_form_blend |
| predicted_BB | 0.2220 | 0.3480 | 0.2775 | model_form_blend |
| predicted_H | 1.1600 | 3.7700 | 2.3088 | model_form_blend |
| predicted_HBP | - | 0.2190 | 0.2190 | form_only |
| predicted_HR | 0.0700 | 0.0970 | 0.0819 | model_form_blend |
| predicted_OBP | 0.3850 | 0.4163 | 0.3988 | model_form_blend |
| predicted_R | 0.5020 | 1.6910 | 1.0253 | model_form_blend |
| predicted_RBI | 0.4300 | 1.0160 | 0.6879 | model_form_blend |
| predicted_SLG | 0.4600 | 0.5047 | 0.4797 | model_form_blend |
| predicted_SO | 0.4240 | 0.9630 | 0.6612 | 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 | 203 |
| 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.299 |
| 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 | 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 | 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 | RF |
| gameID | 20260607_SF@CHC |
| 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-07 |
| sl_k_percent | 10.2 |
| sl_bb_percent | 4.3 |
| sl_woba | 0.353 |
| sl_xwoba | 0.332 |
| sl_xba | 0.311 |
| sl_xslg | 0.402 |
| sl_sweet_spot_percent | 38.4 |
| sl_barrel_batted_rate | 2.5 |
| sl_hard_hit_percent | 30.3 |
| sl_exit_velocity_avg | 87.9 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 13.5 |
| sl_swing_percent | 46.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.150 | 0.000 | 0.000 | Hitting_2B | 0.146 | 0.000 | -0.146 | 0.000 |
| predicted_3B | 0.050 | 0.000 | 0.000 | Hitting_3B | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_AB | 3.350 | 2.000 | 5.000 | Hitting_AB | 3.268 | 2.000 | -1.268 | 0.000 |
| predicted_AVG | 0.252 | 0.000 | 0.200 | Hitting_AVG | 0.244 | 0.000 | -0.244 | 0.000 |
| predicted_BB | 0.200 | 1.000 | 0.000 | Hitting_BB | 0.203 | 1.000 | 0.797 | 0.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.797 | 0.000 | -0.797 | 0.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.073 | 0.000 | -0.073 | 0.000 |
| predicted_OBP | 0.288 | 0.333 | 0.200 | Hitting_OBP | 0.298 | 0.333 | 0.035 | 0.000 |
| predicted_R | 0.325 | 0.000 | 1.000 | Hitting_R | 0.317 | 0.000 | -0.317 | 0.000 |
| predicted_RBI | 0.280 | 0.000 | 0.000 | Hitting_RBI | 0.276 | 0.000 | -0.276 | 0.000 |
| predicted_SLG | 0.367 | 0.000 | 0.200 | Hitting_SLG | 0.386 | 0.000 | -0.386 | 0.000 |
| predicted_SO | 0.692 | 0.000 | 1.000 | Hitting_SO | 0.675 | 1.000 | -0.675 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 12 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 11 |
| Better Metrics | 2 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_BB: 0.2000 -> 1.0000 (boost 0.8000, better) |
| Biggest Deboost | predicted_AB: 3.3500 -> 2.0000 (deboost -1.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 | 6 | 6 | 0 | 5 | 1 | predicted_AB: 3.3500 -> 4.8038 (boost 1.4538, 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.2497 -> 0.2265 (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 | 9 | 1 | 8 | 2 | 7 | predicted_AB: 4.8038 -> 5.0000 (boost 0.1962, better) | predicted_RBI: 0.3785 -> 0.0000 (deboost -0.3785, worse) | AB rounded to 5 (raw=4.80), rates preserved: AVG=0.226 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5606 -> 1.0000 (boost 0.4394, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3569 -> 0.2000 (deboost -0.1569, 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: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 2.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.3569 (boost 0.1569, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687551",
"player_name": "Drew Gilbert",
"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.15,
"predicted_3B": 0.05,
"predicted_AB": 3.35,
"predicted_AVG": 0.252,
"predicted_BB": 0.2,
"predicted_H": 0.64,
"predicted_HR": 0.07,
"predicted_OBP": 0.288,
"predicted_R": 0.325,
"predicted_RBI": 0.28,
"predicted_SLG": 0.367,
"predicted_SO": 0.692
},
"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.1858,
"predicted_3B": 0.0698,
"predicted_AB": 4.8038,
"predicted_AVG": 0.2497,
"predicted_BB": 0.2884,
"predicted_H": 1.0788,
"predicted_HBP": 0.063,
"predicted_HR": 0.0997,
"predicted_OBP": 0.2914,
"predicted_R": 0.5539,
"predicted_RBI": 0.374,
"predicted_SLG": 0.3692,
"predicted_SO": 1.1265
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.15,
"after": 0.1858,
"delta": 0.0358,
"percent_delta": 0.2387,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.05,
"after": 0.0698,
"delta": 0.0198,
"percent_delta": 0.396,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.35,
"after": 4.8038,
"delta": 1.4538,
"percent_delta": 0.434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2497,
"delta": -0.0023,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.2884,
"delta": 0.0884,
"percent_delta": 0.442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0788,
"delta": 0.4388,
"percent_delta": 0.6856,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0997,
"delta": 0.0297,
"percent_delta": 0.4243,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2914,
"delta": 0.0034,
"percent_delta": 0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.325,
"after": 0.5539,
"delta": 0.2289,
"percent_delta": 0.7043,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.374,
"delta": 0.094,
"percent_delta": 0.3357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.367,
"after": 0.3692,
"delta": 0.0022,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.692,
"after": 1.1265,
"delta": 0.4345,
"percent_delta": 0.6279,
"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": 4.8038,
"delta": 1.4538,
"percent_delta": 0.434,
"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": 9,
"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.1858,
"predicted_3B": 0.0698,
"predicted_AB": 4.8038,
"predicted_AVG": 0.2265,
"predicted_BB": 0.2877,
"predicted_H": 1.088,
"predicted_HBP": 0.063,
"predicted_HR": 0.1004,
"predicted_OBP": 0.2702,
"predicted_R": 0.5606,
"predicted_RBI": 0.3785,
"predicted_SLG": 0.3569,
"predicted_SO": 1.1291
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1858,
"after": 0.1858,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0698,
"after": 0.0698,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8038,
"after": 4.8038,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2497,
"after": 0.2265,
"delta": -0.0232,
"percent_delta": -0.0929,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2884,
"after": 0.2877,
"delta": -0.0007,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0788,
"after": 1.088,
"delta": 0.0092,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.063,
"after": 0.063,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0997,
"after": 0.1004,
"delta": 0.0007,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2914,
"after": 0.2702,
"delta": -0.0212,
"percent_delta": -0.0728,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5539,
"after": 0.5606,
"delta": 0.0067,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.374,
"after": 0.3785,
"delta": 0.0045,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3692,
"after": 0.3569,
"delta": -0.0123,
"percent_delta": -0.0333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1265,
"after": 1.1291,
"delta": 0.0026,
"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_AVG",
"before": 0.2497,
"after": 0.2265,
"delta": -0.0232,
"percent_delta": -0.0929,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.80), rates preserved: AVG=0.226 HR/AB=0.021",
"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.1858,
"after": 0.0,
"delta": -0.1858,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0698,
"after": 0.0,
"delta": -0.0698,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.8038,
"after": 5.0,
"delta": 0.1962,
"percent_delta": 0.0408,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2877,
"after": 0.0,
"delta": -0.2877,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.088,
"after": 1.0,
"delta": -0.088,
"percent_delta": -0.0809,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.063,
"after": 0.0,
"delta": -0.063,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1004,
"after": 0.0,
"delta": -0.1004,
"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": 1.1291,
"after": 1.0,
"delta": -0.1291,
"percent_delta": -0.1143,
"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": 4.8038,
"after": 5.0,
"delta": 0.1962,
"percent_delta": 0.0408,
"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": 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.5606,
"after": 1.0,
"delta": 0.4394,
"percent_delta": 0.7838,
"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.5606,
"after": 1.0,
"delta": 0.4394,
"percent_delta": 0.7838,
"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": 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.2265,
"after": 0.2,
"delta": -0.0265,
"percent_delta": -0.117,
"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.2702,
"after": 0.2,
"delta": -0.0702,
"percent_delta": -0.2598,
"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.3569,
"after": 0.2,
"delta": -0.1569,
"percent_delta": -0.4396,
"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.3569,
"after": 0.2,
"delta": -0.1569,
"percent_delta": -0.4396,
"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": 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": 2.0,
"delta": -3.0,
"percent_delta": -0.6,
"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": 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": 5.0,
"after": 2.0,
"delta": -3.0,
"percent_delta": -0.6,
"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.2265,
"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.2702,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3569,
"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.2,
"after": 0.2265,
"delta": 0.0265,
"percent_delta": 0.1324,
"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.2702,
"delta": 0.0702,
"percent_delta": 0.351,
"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.3569,
"delta": 0.1569,
"percent_delta": 0.7846,
"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.3569,
"delta": 0.1569,
"percent_delta": 0.7846,
"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.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.35,
"after": 2.0,
"delta": -1.35,
"percent_delta": -0.403,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2265,
"delta": -0.0255,
"percent_delta": -0.1012,
"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.64,
"after": 0.0,
"delta": -0.64,
"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.288,
"after": 0.2702,
"delta": -0.0178,
"percent_delta": -0.0618,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.325,
"after": 0.0,
"delta": -0.325,
"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.367,
"after": 0.3569,
"delta": -0.0101,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.692,
"after": 0.0,
"delta": -0.692,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 1,
"deboosted_metrics": 11,
"better_metrics": 2,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_BB",
"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.35,
"after": 2.0,
"delta": -1.35,
"percent_delta": -0.403,
"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.050 | - |
| predicted_AB | 3.350 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.200 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.325 | - |
| predicted_RBI | 0.280 | - |
| predicted_SLG | 0.367 | - |
| predicted_SO | 0.692 | - |
Final model 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.036 |
| predicted_3B | 0.070 | 0.020 |
| predicted_AB | 4.804 | 1.454 |
| predicted_AVG | 0.250 | -0.002 |
| predicted_BB | 0.288 | 0.088 |
| predicted_H | 1.079 | 0.439 |
| predicted_HBP | 0.063 | - |
| predicted_HR | 0.100 | 0.030 |
| predicted_OBP | 0.291 | 0.003 |
| predicted_R | 0.554 | 0.229 |
| predicted_RBI | 0.374 | 0.094 |
| predicted_SLG | 0.369 | 0.002 |
| predicted_SO | 1.127 | 0.435 |
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.070 | 0.000 |
| predicted_AB | 4.804 | 0.000 |
| predicted_AVG | 0.227 | -0.023 |
| predicted_BB | 0.288 | -0.001 |
| predicted_H | 1.088 | 0.009 |
| predicted_HBP | 0.063 | 0.000 |
| predicted_HR | 0.100 | 0.001 |
| predicted_OBP | 0.270 | -0.021 |
| predicted_R | 0.561 | 0.007 |
| predicted_RBI | 0.379 | 0.005 |
| predicted_SLG | 0.357 | -0.012 |
| predicted_SO | 1.129 | 0.003 |
AB rounded to 5 (raw=4.80), rates preserved: AVG=0.226 HR/AB=0.021
| 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 | - |
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.186 |
| predicted_3B | 0.000 | -0.070 |
| predicted_AB | 5.000 | 0.196 |
| predicted_AVG | 0.200 | -0.026 |
| predicted_BB | 0.000 | -0.288 |
| predicted_H | 1.000 | -0.088 |
| predicted_HR | 0.000 | -0.100 |
| predicted_OBP | 0.200 | -0.070 |
| predicted_R | 1.000 | 0.439 |
| predicted_RBI | 0.000 | -0.379 |
| predicted_SLG | 0.200 | -0.157 |
| 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 | -3.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 | 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 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 5.000 | 0.2308 | 0.2857 | 0.2308 | 0.2308 | 0.0000 | 0.0000 | 0.0769 | 0.3846 |
| last_10 | 0.20 | 9 | - | 29.000 | 8.000 | 1.000 | 1.000 | 1.000 | 3.000 | 6.000 | 1.000 | 8.000 | 0.2759 | 0.3000 | 0.4828 | 0.2759 | 0.0345 | 0.1035 | 0.0345 | 0.2759 |
| season | 0.60 | 43 | - | 402.000 | 98.000 | 18.000 | 6.000 | 9.000 | 34.000 | 39.000 | 24.000 | 83.000 | 0.2438 | 0.2963 | 0.3856 | 0.2438 | 0.0224 | 0.0846 | 0.0597 | 0.2065 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2330 |
| predicted_3B | 0.0960 |
| predicted_AB | 6.7230 |
| predicted_AVG | 0.2467 |
| predicted_BB | 0.4050 |
| predicted_H | 1.6580 |
| predicted_HBP | 0.0630 |
| predicted_HR | 0.1390 |
| predicted_OBP | 0.2959 |
| predicted_R | 0.8560 |
| predicted_RBI | 0.4980 |
| predicted_SLG | 0.3721 |
| predicted_SO | 1.7000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1500 | 0.2330 | 0.1858 | model_form_blend |
| predicted_3B | 0.0500 | 0.0960 | 0.0698 | model_form_blend |
| predicted_AB | 3.3500 | 6.7230 | 4.8038 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2467 | 0.2497 | model_form_blend |
| predicted_BB | 0.2000 | 0.4050 | 0.2884 | model_form_blend |
| predicted_H | 0.6400 | 1.6580 | 1.0788 | model_form_blend |
| predicted_HBP | - | 0.0630 | 0.0630 | form_only |
| predicted_HR | 0.0700 | 0.1390 | 0.0997 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2959 | 0.2914 | model_form_blend |
| predicted_R | 0.3250 | 0.8560 | 0.5539 | model_form_blend |
| predicted_RBI | 0.2800 | 0.4980 | 0.3740 | model_form_blend |
| predicted_SLG | 0.3670 | 0.3721 | 0.3692 | model_form_blend |
| predicted_SO | 0.6920 | 1.7000 | 1.1265 | 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 | 120 |
| 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 | 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 | 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 | 1 |
| 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 | CF-LF |
| gameID | 20260607_SF@CHC |
| game_type | full |
| mlbID | 687551 |
| playerID | 687551 |
| playerName | Drew Gilbert |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 21.3 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.285 |
| sl_xwoba | 0.258 |
| sl_xba | 0.221 |
| sl_xslg | 0.313 |
| sl_sweet_spot_percent | 29.4 |
| sl_barrel_batted_rate | 3.0 |
| sl_hard_hit_percent | 31.4 |
| sl_exit_velocity_avg | 84.6 |
| sl_launch_angle_avg | 16.3 |
| sl_whiff_percent | 25.5 |
| sl_swing_percent | 45.4 |
| 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.900 | 1.000 | 1.100 | 2.000 |
| predicted_ER | 4.000 | 4.000 | 4.000 | Pitching_ER | 2.800 | 0.000 | 1.200 | 4.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 5.600 | 1.000 | 0.400 | 5.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.910 | 7.000 | 0.090 | -1.000 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 5.100 | 4.000 | -1.100 | 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": "657277",
"player_name": "Logan Webb",
"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": 3.0,
"predicted_ER": 4.0,
"predicted_H": 6.0,
"predicted_HR": 2.0,
"predicted_IP": 6.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": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 4.0,
"predicted_H": 6.0,
"predicted_HR": 2.0,
"predicted_IP": 6.0,
"predicted_R": 4.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": 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": 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": 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": 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": 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": 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,
"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 | 4.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 2.000 | - |
| predicted_IP | 6.000 | - |
| 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 | 11.000 | 25.000 | 8.000 | 24.000 | 2.000 | 3.3750 | 1.1250 | 0.3750 | 0.8523 | 0.2727 | 0.8182 | 0.0682 |
| last_10 | 0.35 | 10 | 59.100 | 28.000 | 56.000 | 19.000 | 51.000 | 4.000 | 4.2472 | 1.2640 | 0.4719 | 0.9438 | 0.3202 | 0.8596 | 0.0674 |
| season | 0.20 | 10 | 59.100 | 28.000 | 56.000 | 19.000 | 51.000 | 4.000 | 4.2472 | 1.2640 | 0.4719 | 0.9438 | 0.3202 | 0.8596 | 0.0674 |
| Metric | Value |
|---|---|
| predicted_BB | 1.9030 |
| predicted_ER | 2.6390 |
| predicted_ERA | 3.9588 |
| predicted_H | 5.4840 |
| predicted_HR | 0.5500 |
| predicted_IP | 6.0000 |
| predicted_SO | 5.2140 |
| predicted_WHIP | 1.2312 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 1.9030 | 2.4414 | model_form_blend |
| predicted_ER | 4.0000 | 2.6390 | 3.3070 | model_form_blend |
| predicted_ERA | - | 3.9588 | 3.9588 | form_only |
| predicted_H | 6.0000 | 5.4840 | 5.7373 | model_form_blend |
| predicted_HR | 2.0000 | 0.5500 | 1.2617 | model_form_blend |
| predicted_IP | 6.0000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 4.0000 | 5.2140 | 4.6181 | model_form_blend |
| predicted_WHIP | - | 1.2312 | 1.2312 | 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 | 10 |
| Season rows before report date | 10 |
| Report year | 2026 |
| Profile rows used | 10 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 6.0 |
| H | 6 |
| R | 4 |
| ER | 4 |
| BB | 3 |
| SO | 4 |
| HR | 2 |
| BF | 27 |
| Pitches | 106 |
| 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 | 0 |
| Pitching_ERA | 4.25 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 12 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 7.0 |
| Pitching_Pitches | 95 |
| Pitching_R | 0 |
| Pitching_SO | 4 |
| Pitching_Strikes | 64 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260603_SF@MIL |
| game_type | full |
| mlbID | 657277 |
| playerID | 657277 |
| playerName | Logan Webb |
| pos | P |
| started | True |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-03 |
| sl_k_percent | 20.3 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.305 |
| sl_xwoba | 0.315 |
| sl_sweet_spot_percent | 29.5 |
| sl_barrel_batted_rate | 5.7 |
| sl_hard_hit_percent | 45.5 |
| sl_whiff_percent | 20.6 |
| sl_swing_percent | 47.5 |
| sl_avg_best_speed | 78.691247126 |
| sl_avg_hyper_speed | 94.888587414 |
| 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.321 | 1.000 | -0.321 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.286 | 0.000 | -0.286 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.643 | 1.000 | 0.357 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.996 | 1.000 | 0.104 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.893 | 1.000 | -0.893 | -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: 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": "676775",
"player_name": "Keaton Winn",
"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": 1.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": 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.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": 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.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 | 1.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 | 3.000 | 7.000 | 1.000 | 4.000 | 2.000 | 4.0500 | 1.2000 | 0.4500 | 1.0500 | 0.1500 | 0.6000 | 0.3000 |
| last_10 | 0.35 | 10 | 12.200 | 3.000 | 10.000 | 3.000 | 11.000 | 2.000 | 2.1316 | 1.0263 | 0.2368 | 0.7895 | 0.2368 | 0.8684 | 0.1579 |
| season | 0.20 | 28 | 30.000 | 8.000 | 18.000 | 9.000 | 25.000 | 2.000 | 2.4000 | 0.9000 | 0.2667 | 0.6000 | 0.3000 | 0.8333 | 0.0667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3640 |
| predicted_ER | 0.5260 |
| predicted_ERA | 3.6504 |
| predicted_H | 1.1800 |
| predicted_HR | 0.2260 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.0760 |
| predicted_WHIP | 1.1903 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3640 | 0.1662 | model_form_blend |
| predicted_ER | 0.0000 | 0.5260 | 0.2402 | model_form_blend |
| predicted_ERA | - | 3.6504 | 3.6504 | form_only |
| predicted_H | 1.0000 | 1.1800 | 1.0822 | model_form_blend |
| predicted_HR | 0.0000 | 0.2260 | 0.1032 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0760 | 0.4913 | model_form_blend |
| predicted_WHIP | - | 1.1903 | 1.1903 | 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.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.40 |
| 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 | 19 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260607_SF@CHC |
| game_type | full |
| mlbID | 676775 |
| playerID | 676775 |
| playerName | Keaton Winn |
| pos | P |
| started | False |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 22.1 |
| sl_bb_percent | 8.0 |
| sl_woba | 0.234 |
| sl_xwoba | 0.271 |
| sl_sweet_spot_percent | 31.6 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 26.6 |
| sl_whiff_percent | 24.9 |
| sl_swing_percent | 49.0 |
| sl_avg_best_speed | 74.669035128 |
| sl_avg_hyper_speed | 92.42516039 |
| 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.536 | 0.000 | -0.536 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.393 | 0.000 | -0.393 | 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 | 0.918 | 1.000 | 0.082 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.143 | 1.000 | -0.143 | 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": "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 | 3.000 | 3.000 | 5.000 | 0.000 | 0.0000 | 1.2857 | 0.0000 | 0.6429 | 0.6429 | 1.0714 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 8.000 | 11.000 | 3.000 | 13.000 | 3.000 | 6.9677 | 1.3548 | 0.7742 | 1.0645 | 0.2903 | 1.2581 | 0.2903 |
| season | 0.20 | 28 | 29.200 | 11.000 | 20.000 | 15.000 | 32.000 | 5.000 | 3.3371 | 1.1798 | 0.3708 | 0.6742 | 0.5056 | 1.0787 | 0.1685 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4330 |
| predicted_ER | 0.4090 |
| predicted_ERA | 3.6851 |
| predicted_H | 0.8710 |
| predicted_HR | 0.1370 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0440 |
| predicted_WHIP | 1.3040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4330 | 0.1972 | model_form_blend |
| predicted_ER | 0.0000 | 0.4090 | 0.1863 | model_form_blend |
| predicted_ERA | - | 3.6851 | 3.6851 | form_only |
| predicted_H | 0.0000 | 0.8710 | 0.3967 | model_form_blend |
| predicted_HR | 0.0000 | 0.1370 | 0.0624 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0440 | 1.0200 | model_form_blend |
| predicted_WHIP | - | 1.3040 | 1.3040 | 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 | 1 |
| 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 | 3.34 |
| 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 | 6 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260607_SF@CHC |
| game_type | full |
| mlbID | 668873 |
| playerID | 668873 |
| playerName | Caleb Kilian |
| pos | P |
| started | False |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 12.1 |
| sl_woba | 0.278 |
| sl_xwoba | 0.312 |
| sl_sweet_spot_percent | 30.7 |
| sl_barrel_batted_rate | 8.0 |
| sl_hard_hit_percent | 38.7 |
| sl_whiff_percent | 26.6 |
| sl_swing_percent | 47.9 |
| sl_avg_best_speed | 76.518048378 |
| sl_avg_hyper_speed | 93.723557432 |
| 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.682 | 1.000 | -0.682 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.364 | 0.000 | -0.364 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.682 | 1.000 | 1.318 | 1.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.741 | 1.000 | -0.541 | -0.800 |
| 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 | 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": "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": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"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": 0.2,
"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": 0.6667,
"after": 0.2,
"delta": -0.4667,
"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.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": 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.6667,
"after": 0.2,
"delta": -0.4667,
"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.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 | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| 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.000 | 0.000 | 6.000 | 2.000 | 4.000 | 0.000 | 0.0000 | 2.0000 | 0.0000 | 1.5000 | 0.5000 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 8.000 | 4.000 | 7.000 | 9.000 | 10.000 | 1.000 | 4.5000 | 2.0000 | 0.5000 | 0.8750 | 1.1250 | 1.2500 | 0.1250 |
| season | 0.20 | 22 | 19.100 | 8.000 | 15.000 | 15.000 | 27.000 | 1.000 | 3.7241 | 1.5517 | 0.4138 | 0.7759 | 0.7759 | 1.3965 | 0.0517 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3770 |
| predicted_ER | 0.2690 |
| predicted_ERA | 3.4785 |
| predicted_H | 0.7200 |
| predicted_HR | 0.0710 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7200 |
| predicted_WHIP | 1.5767 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3770 | 0.1547 | model_form_blend |
| predicted_ER | 0.0000 | 0.2690 | 0.1104 | model_form_blend |
| predicted_ERA | - | 3.4785 | 3.4785 | form_only |
| predicted_H | 2.0000 | 0.7200 | 1.4746 | model_form_blend |
| predicted_HR | 0.0000 | 0.0710 | 0.0291 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7200 | 0.2955 | model_form_blend |
| predicted_WHIP | - | 1.5767 | 1.5767 | 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 | 0.2 |
| H | 2 |
| 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 | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.72 |
| Pitching_Flyouts | 0 |
| 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 | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260607_SF@CHC |
| game_type | full |
| mlbID | 669062 |
| playerID | 669062 |
| playerName | Erik Miller |
| pos | P |
| started | False |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-07 |
| sl_k_percent | 31.0 |
| sl_bb_percent | 17.2 |
| sl_woba | 0.315 |
| sl_xwoba | 0.3 |
| sl_sweet_spot_percent | 34.1 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 29.5 |
| sl_whiff_percent | 33.1 |
| sl_swing_percent | 36.7 |
| sl_avg_best_speed | 69.525734091 |
| sl_avg_hyper_speed | 92.728318605 |